Module: StaticAssociation::ClassMethods
- Includes:
- Enumerable
- Defined in:
- lib/static_association.rb
Instance Method Summary collapse
Instance Method Details
#all ⇒ Object
31 32 33 |
# File 'lib/static_association.rb', line 31 def all index.values end |
#find(id) ⇒ Object
35 36 37 38 |
# File 'lib/static_association.rb', line 35 def find(id) raise RecordNotFound unless index.has_key?(id) index[id] end |
#index ⇒ Object
27 28 29 |
# File 'lib/static_association.rb', line 27 def index @index ||= ActiveSupport::OrderedHash.new end |
#record(settings) {|record| ... } ⇒ Object
40 41 42 43 44 45 46 47 |
# File 'lib/static_association.rb', line 40 def record(settings) settings.assert_valid_keys(:id) id = settings.fetch(:id) raise DuplicateID if index.has_key?(id) record = self.new(id) yield(record) if block_given? index[id] = record end |