Class: DefMastership::Definition
- Inherits:
-
Object
- Object
- DefMastership::Definition
- Extended by:
- Forwardable
- Defined in:
- lib/defmastership/definition.rb
Overview
DefMastership definition: contains all data of a definition
Instance Method Summary collapse
- #<<(new_line) ⇒ Object
- #add_eref(ref, extrefs) ⇒ Object
- #add_iref(ref) ⇒ Object
-
#initialize(match) ⇒ Definition
constructor
A new instance of Definition.
- #set_attribute(key, value) ⇒ Object
- #sha256_short ⇒ Object
- #value ⇒ Object
- #wrong_explicit_checksum ⇒ Object
Constructor Details
#initialize(match) ⇒ Definition
Returns a new instance of Definition.
55 56 57 58 59 60 |
# File 'lib/defmastership/definition.rb', line 55 def initialize(match) @data = DefinitionData.new( *BUILD_FROM_MATCH.transform_values { |lamb| lamb.call(match) } .fetch_values(*DefinitionData.members) ) end |
Instance Method Details
#<<(new_line) ⇒ Object
62 63 64 65 |
# File 'lib/defmastership/definition.rb', line 62 def <<(new_line) lines << new_line self end |
#add_eref(ref, extrefs) ⇒ Object
79 80 81 |
# File 'lib/defmastership/definition.rb', line 79 def add_eref(ref, extrefs) eref[ref] = extrefs.strip.split(/\s*,\s*/) end |
#add_iref(ref) ⇒ Object
83 84 85 |
# File 'lib/defmastership/definition.rb', line 83 def add_iref(ref) iref << ref end |
#set_attribute(key, value) ⇒ Object
87 88 89 |
# File 'lib/defmastership/definition.rb', line 87 def set_attribute(key, value) attributes[key] = value end |
#sha256_short ⇒ Object
71 72 73 |
# File 'lib/defmastership/definition.rb', line 71 def sha256_short "~#{Digest::SHA2.hexdigest(value).chars.last(8).join}" end |
#value ⇒ Object
67 68 69 |
# File 'lib/defmastership/definition.rb', line 67 def value lines.join("\n") end |
#wrong_explicit_checksum ⇒ Object
75 76 77 |
# File 'lib/defmastership/definition.rb', line 75 def wrong_explicit_checksum explicit_checksum unless explicit_checksum.eql?(sha256_short) end |