Method: LSystem::RulesEngine#constants=

Defined in:
lib/l_system/rules_engine.rb

#constants=(new_values) ⇒ Object

Set the systems constants to new_values.



71
72
73
74
75
76
77
78
79
80
81
# File 'lib/l_system/rules_engine.rb', line 71

def constants=( new_values )
  @rules_as_hash = nil

  new_values = Set.new( new_values, &:to_s )
  unless new_values.disjoint?( self.variables )
    common_char = (new_values & self.variables).to_a.first
    raise ArgumentError, "%p is already included in the variable set" % [ common_char ]
  end

  @constants = new_values
end