class SetBuilder::Traits

Public Instance Methods

[](index) click to toggle source
Calls superclass method
# File lib/set_builder/traits.rb, line 10
def [](index)
  case index
  when Symbol, String
    index = index.to_s
    self.find {|trait| trait.name == index}
  else
    super
  end
end
modifiers() click to toggle source
# File lib/set_builder/traits.rb, line 28
def modifiers
  # !nb: not sure why inject was failing but it was modifying trait.modifiers!
  @modifiers = ModifierCollection.new
  each do |trait|
    trait.modifiers.each do |modifier|
      @modifiers << modifier unless @modifiers.member?(modifier)
    end
  end
  @modifiers
end
to_json() click to toggle source
# File lib/set_builder/traits.rb, line 22
def to_json
  "[#{collect(&:to_json).join(",")}]"
end