class Riml::Compiler::EstablishScopeVisitor
Public Class Methods
new(options)
click to toggle source
# File lib/riml/compiler.rb, line 522 def initialize(options) @scope = options[:scope] @nested_function = options[:nested_function] end
Public Instance Methods
establish_scope(node)
click to toggle source
# File lib/riml/compiler.rb, line 531 def establish_scope(node) if node.scope && !@nested_function node.scope = node.scope.merge @scope elsif node.scope node.scope = @scope.merge_parent_function(node.scope) else node.scope = @scope end walk_node!(node) end
visit(node)
click to toggle source
# File lib/riml/compiler.rb, line 527 def visit(node) establish_scope(node) end