class
Template::Interpolation
- Template::Interpolation
- Reference
- Object
Defined in:
template/interpolation.crConstant Summary
-
VARIABLE_PATTERN =
/\$\$|\$\{([a-zA-Z_][a-zA-Z0-9_]*)\}/
Instance Method Summary
-
#expand(variables : Hash(String, String)) : self
Expands variable cross-references using topological sort.
-
#interpolate(template : String) : String
Replaces
${VAR}references in template with their values. -
#interpolate_all(templates : Array(String)) : Array(String)
Interpolates every string in templates.
- #variables : Hash(String, String)
Instance Method Detail
def expand(variables : Hash(String, String)) : self
#
Expands variable cross-references using topological sort.
Raises Craph::CycleError if any circular references are detected.
def interpolate(template : String) : String
#
Replaces ${VAR} references in template with their values.
Undefined variables are left as-is; $$ is escaped to a single $.
def interpolate_all(templates : Array(String)) : Array(String)
#
Interpolates every string in templates. Returns a new array.