Class: Glossarist::BibliographyData
- Inherits:
-
Lutaml::Model::Serializable
- Object
- Lutaml::Model::Serializable
- Glossarist::BibliographyData
- Defined in:
- lib/glossarist/bibliography_data.rb
Instance Method Summary collapse
- #[](citation_key) ⇒ Object
- #entries_from_hash(model, value) ⇒ Object
- #entries_to_hash(model, doc) ⇒ Object
- #find(citation_key) ⇒ Object
- #keys ⇒ Object
Instance Method Details
#[](citation_key) ⇒ Object
22 23 24 25 |
# File 'lib/glossarist/bibliography_data.rb', line 22 def [](citation_key) entry = find(citation_key) entry&.data end |
#entries_from_hash(model, value) ⇒ Object
27 28 29 30 31 32 33 |
# File 'lib/glossarist/bibliography_data.rb', line 27 def entries_from_hash(model, value) return unless value.is_a?(Hash) model.entries = value.map do |key, data| BibliographyEntry.new(citation_key: key, data: data || {}) end end |
#entries_to_hash(model, doc) ⇒ Object
35 36 37 38 39 |
# File 'lib/glossarist/bibliography_data.rb', line 35 def entries_to_hash(model, doc) model.entries.each do |entry| doc[entry.citation_key] = entry.data end end |
#find(citation_key) ⇒ Object
14 15 16 |
# File 'lib/glossarist/bibliography_data.rb', line 14 def find(citation_key) entries.find { |e| e.citation_key == citation_key } end |
#keys ⇒ Object
18 19 20 |
# File 'lib/glossarist/bibliography_data.rb', line 18 def keys entries.map(&:citation_key) end |