Class: Lutaml::Model::Schema::Decorators::DefinitionCollection
- Inherits:
-
Object
- Object
- Lutaml::Model::Schema::Decorators::DefinitionCollection
- Includes:
- Enumerable
- Defined in:
- lib/lutaml/model/schema/decorators/definition_collection.rb
Instance Method Summary collapse
- #[](name) ⇒ Object
- #each ⇒ Object
-
#initialize(definitions_hash) ⇒ DefinitionCollection
constructor
A new instance of DefinitionCollection.
- #transform_values ⇒ Object
Constructor Details
#initialize(definitions_hash) ⇒ DefinitionCollection
Returns a new instance of DefinitionCollection.
10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/lutaml/model/schema/decorators/definition_collection.rb', line 10 def initialize(definitions_hash) @definition_hash = definitions_hash @polymorphic_classes = [] @definitions = definitions_hash.to_h do |name, schema| definition = definition_class.new(name, schema) @polymorphic_classes << definition if definition.polymorphic? [name, definition] end resolve_polymorphic_base_types! end |
Instance Method Details
#[](name) ⇒ Object
32 33 34 |
# File 'lib/lutaml/model/schema/decorators/definition_collection.rb', line 32 def [](name) @definitions[name] || raise("Definition not found: #{name}") end |
#each ⇒ Object
24 25 26 |
# File 'lib/lutaml/model/schema/decorators/definition_collection.rb', line 24 def each(&) @definitions.each(&) end |
#transform_values ⇒ Object
28 29 30 |
# File 'lib/lutaml/model/schema/decorators/definition_collection.rb', line 28 def transform_values(&) @definitions.transform_values(&) end |