class Pione::Lang::RuleTable
RuleTable
is a table for recording rule names and rule definitions.
Public Instance Methods
evaluate_value(env, expr)
click to toggle source
Evaluate table value, but we get the referent recuirsively if the value is a referential rule expression.
# File lib/pione/lang/environment.rb, line 143 def evaluate_value(env, expr) if expr.is_a?(RuleExpr) definition = get(env, env.setup_package_id(expr)) definition.set(param_sets: definition.param_sets.merge(expr.param_sets)) else expr end end
make_reference(package_id, name)
click to toggle source
Make a rule expression as a reference.
# File lib/pione/lang/environment.rb, line 153 def make_reference(package_id, name) RuleExpr.new(name, package_id) end