class Parser::StaticEnvironment

Public Class Methods

new() click to toggle source
# File lib/parser/static_environment.rb, line 4
def initialize
  reset
end

Public Instance Methods

declare(name) click to toggle source
# File lib/parser/static_environment.rb, line 33
def declare(name)
  @variables.add(name.to_sym)

  self
end
declared?(name) click to toggle source
# File lib/parser/static_environment.rb, line 39
def declared?(name)
  @variables.include?(name.to_sym)
end
extend_dynamic() click to toggle source
# File lib/parser/static_environment.rb, line 20
def extend_dynamic
  @stack.push(@variables)
  @variables = @variables.dup

  self
end
extend_static() click to toggle source
# File lib/parser/static_environment.rb, line 13
def extend_static
  @stack.push(@variables)
  @variables = Set[]

  self
end
reset() click to toggle source
# File lib/parser/static_environment.rb, line 8
def reset
  @variables = Set[]
  @stack     = []
end
unextend() click to toggle source
# File lib/parser/static_environment.rb, line 27
def unextend
  @variables = @stack.pop

  self
end