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