class Damsel::AttributeSet

Attributes

attrs[R]

Public Class Methods

new() click to toggle source
# File lib/damsel/attribute_set.rb, line 5
def initialize
  @attrs = {}
end

Public Instance Methods

<<(attribute) click to toggle source
# File lib/damsel/attribute_set.rb, line 9
def <<(attribute)
  @attrs[attribute.name] = attribute
end
[](name) click to toggle source
# File lib/damsel/attribute_set.rb, line 13
def [](name)
  return @attrs[name] if @attrs[name]
  singular = name.to_s.singularize.to_sym
  return @attrs[singular] if @attrs[singular]
  plural = name.to_s.pluralize.to_sym
  return @attrs[plural] if @attrs[plural]
  raise "unknown attribute: #{name} (#{singular} #{plural})"
end