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