Class: Cuprum::Collections::Basic::Collection
- Inherits:
-
Collection
- Object
- Cuprum::CommandFactory
- Collection
- Cuprum::Collections::Basic::Collection
- Defined in:
- lib/cuprum/collections/basic/collection.rb
Overview
Wraps an in-memory array of hashes data store as a Cuprum collection.
Instance Attribute Summary collapse
-
#data ⇒ Array<Hash>
readonly
The current data in the collection.
Attributes included from Relations::Scope
Attributes included from Relations::Parameters
#name, #plural_name, #qualified_name, #singular_name
Attributes included from Relations::Options
Instance Method Summary collapse
-
#default_contract ⇒ Stannum::Constraints::Base?
The default contract for validating items in the collection.
-
#initialize(data: [], entity_class: nil, name: nil, qualified_name: nil, singular_name: nil, **options) ⇒ Collection
constructor
A new instance of Collection.
-
#query ⇒ Cuprum::Collections::Basic::Query
A new Query instance, used for querying against the collection data.
Methods inherited from Collection
Methods included from Relations::Scope
Methods included from Relations::PrimaryKeys
#primary_key_name, #primary_key_type
Methods included from Relations::Parameters
#entity_class, resolve_parameters, #resolve_parameters
Constructor Details
#initialize(data: [], entity_class: nil, name: nil, qualified_name: nil, singular_name: nil, **options) ⇒ Collection
Returns a new instance of Collection.
29 30 31 32 33 |
# File 'lib/cuprum/collections/basic/collection.rb', line 29 def initialize(data: [], **parameters) super(default_entity_class: Hash, **parameters) @data = data end |
Instance Attribute Details
#data ⇒ Array<Hash> (readonly)
Returns the current data in the collection.
36 37 38 |
# File 'lib/cuprum/collections/basic/collection.rb', line 36 def data @data end |
Instance Method Details
#default_contract ⇒ Stannum::Constraints::Base?
Returns the default contract for validating items in the collection.
76 77 78 |
# File 'lib/cuprum/collections/basic/collection.rb', line 76 def default_contract @options[:default_contract] end |
#query ⇒ Cuprum::Collections::Basic::Query
A new Query instance, used for querying against the collection data.
83 84 85 |
# File 'lib/cuprum/collections/basic/collection.rb', line 83 def query Cuprum::Collections::Basic::Query.new(data, scope:) end |