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