rubyx/lib/melon/compiler/locals_collector.rb

25 lines
385 B
Ruby
Raw Normal View History

2016-12-21 10:20:36 +01:00
module Melon
class LocalsCollector < TotalProcessor
def initialize
@locals = {}
end
def collect(statement)
process statement
@locals
end
def on_lvasgn statement
add_local( statement )
end
def add_local(statement)
var = statement.children[0]
@locals[var] = :Object #guess, can maybe guess better
end
end
end