Module: Clef::Core::Metadata

Included in:
Score, Staff
Defined in:
lib/clef/core/metadata.rb

Instance Method Summary collapse

Instance Method Details

#metadataHash

Returns:

  • (Hash)


7
8
9
# File 'lib/clef/core/metadata.rb', line 7

def 
  (@metadata)
end

#metadata=(value) ⇒ Object

Parameters:

  • value (Hash)

Raises:

  • (ArgumentError)


12
13
14
15
16
# File 'lib/clef/core/metadata.rb', line 12

def metadata=(value)
  raise ArgumentError, "metadata must be a Hash" unless value.is_a?(Hash)

  @metadata = value.dup
end

#set_metadata(key, value) ⇒ self

Parameters:

  • key (Object)
  • value (Object)

Returns:

  • (self)


21
22
23
24
# File 'lib/clef/core/metadata.rb', line 21

def (key, value)
  @metadata[key] = value
  self
end

#update_metadata(value = nil, **kwargs) ⇒ self

Parameters:

  • value (Hash, nil) (defaults to: nil)
  • kwargs (Hash)

Returns:

  • (self)

Raises:

  • (ArgumentError)


29
30
31
32
33
34
35
36
# File 'lib/clef/core/metadata.rb', line 29

def (value = nil, **kwargs)
  source = value || {}
  raise ArgumentError, "metadata must be a Hash" unless source.is_a?(Hash)

  @metadata.merge!(source)
  @metadata.merge!(kwargs)
  self
end