lib/ctioga2/commands/variables.rb in ctioga2-0.8 vs lib/ctioga2/commands/variables.rb in ctioga2-0.9
- old
+ new
@@ -57,10 +57,14 @@
# InterpreterString or a String). In the former case
# (InterpreterString), if _interpreter_ is given, the value is
# expanded at the time of the definition, (immediate variable),
# whereas if it stays _nil_, the variable is defined as a
# recursively defined variable.
- def define_variable(name, value, interpreter = nil)
+ def define_variable(name, value, interpreter = nil, override = true)
+ if (!override) && @variables.key?(name)
+ # Not redefining an already defined variable.
+ return
+ end
if value.respond_to? :expand_to_string
if interpreter
value = value.expand_to_string(interpreter)
end
end