Class: Metacrunch::Mab2::Document::Datafield::Set

Inherits:
Object
  • Object
show all
Includes:
Enumerable
Defined in:
lib/metacrunch/mab2/document/datafield_set.rb

Instance Method Summary collapse

Constructor Details

#initialize(datafields = []) ⇒ Set

Returns a new instance of Set.



8
9
10
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 8

def initialize(datafields = [])
  @datafields = datafields
end

Instance Method Details

#<<(datafield) ⇒ Object



16
17
18
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 16

def <<(datafield)
  @datafields << datafield
end

#concat(datafield_set) ⇒ Object



20
21
22
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 20

def concat(datafield_set)
  @datafields.concat(datafield_set.to_a)
end

#eachObject



12
13
14
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 12

def each
  block_given? ? @datafields.each { |_datafield| yield _datafield } : to_enum
end

#empty?Boolean

Returns:

  • (Boolean)


28
29
30
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 28

def empty?
  @datafields.empty?
end

#subfields(name) ⇒ Metacrunch::Mab2::Document::Datafield::Subfield::Set



33
34
35
36
37
38
39
40
41
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 33

def subfields(name)
  set = Subfield::Set.new

  @datafields.each do |datafield|
    set.concat(datafield.subfields(name))
  end

  set
end

#to_aObject



24
25
26
# File 'lib/metacrunch/mab2/document/datafield_set.rb', line 24

def to_a
  @datafields
end