Module: Pione::Util::EmbededExprExpander
- Defined in:
- lib/pione/util/embeded-expr-expander.rb
Class Method Summary collapse
-
.expand(env, str) ⇒ Object
Expand embeded expressions in the string.
Class Method Details
.expand(env, str) ⇒ Object
Expand embeded expressions in the string.
5 6 7 8 9 10 11 12 13 14 |
# File 'lib/pione/util/embeded-expr-expander.rb', line 5 def self.(env, str) return nil if str.nil? # parse and transform str.gsub(/\{(\$.+?)\}|\<\?\s*(.+?)\s*\?>/) do tree = Lang::DocumentParser.new.expr.parse($1 || $2) expr = Lang::DocumentTransformer.new.apply(tree, {package_name: nil, filename: nil}) expr.eval(env).call_pione_method(env, "textize", []).value end end |