Class: Metacrunch::Mab2::Document::DatafieldSet
- Inherits:
-
Object
- Object
- Metacrunch::Mab2::Document::DatafieldSet
- Includes:
- SelfEnumerable
- Defined in:
- lib/metacrunch/mab2/document/datafield_set.rb
Instance Method Summary collapse
- #<<(datafield) ⇒ Object
- #concat(datafield_set) ⇒ Object
- #each ⇒ Object
- #empty? ⇒ Boolean
-
#initialize(datafields = []) ⇒ DatafieldSet
constructor
A new instance of DatafieldSet.
- #present? ⇒ Boolean
- #subfields(code = nil) ⇒ Metacrunch::Mab2::Document::SubfieldSet
- #to_a ⇒ Object
-
#to_xml(builder) ⇒ Object
—————————————————————————— Serialization ——————————————————————————.
- #value ⇒ Object (also: #first_value)
Constructor Details
#initialize(datafields = []) ⇒ DatafieldSet
Returns a new instance of DatafieldSet.
9 10 11 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 9 def initialize(datafields = []) @datafields = datafields end |
Instance Method Details
#<<(datafield) ⇒ Object
17 18 19 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 17 def <<(datafield) @datafields << datafield end |
#concat(datafield_set) ⇒ Object
21 22 23 24 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 21 def concat(datafield_set) @datafields.concat(datafield_set.to_a) self end |
#each ⇒ Object
13 14 15 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 13 def each block_given? ? @datafields.each { |_datafield| yield _datafield } : to_enum end |
#empty? ⇒ Boolean
35 36 37 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 35 def empty? @datafields.empty? end |
#present? ⇒ Boolean
39 40 41 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 39 def present? !empty? end |
#subfields(code = nil) ⇒ Metacrunch::Mab2::Document::SubfieldSet
44 45 46 47 48 49 50 51 52 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 44 def subfields(code = nil) result = Metacrunch::Mab2::Document::SubfieldSet.new @datafields.each do |_datafield| result.concat(_datafield.subfields(code)) end result end |
#to_a ⇒ Object
31 32 33 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 31 def to_a @datafields end |
#to_xml(builder) ⇒ Object
Serialization
58 59 60 61 62 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 58 def to_xml(builder) self.each do |_datafield| _datafield.to_xml(builder) end end |
#value ⇒ Object Also known as: first_value
26 27 28 |
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 26 def value @datafields.find { |_datafield| _datafield.value }.try(:value) end |