1234567891011121314151617181920212223242526272829 |
- class Environment
- attr_reader :data
-
- def initialize(parent = nil)
- @data = Hash.new
-
- CORE.each do |k, v|
- @data[k.to_s] = v
- end
-
- unless parent.nil?
- parent.data.each do |k, v|
- @data[k] = v
- end
- end
- end
-
- def get(name)
- if @data.has_key?(name)
- @data[name]
- else
- throw "Undefined variable #{name}"
- end
- end
-
- def set(name, value)
- @data[name] = value
- end
- end
|