Class: Chemicalml::Model::Document

Inherits:
Node
  • Object
show all
Defined in:
lib/chemicalml/model/document.rb

Overview

Top-level container: the canonical document. Parallel to AsciiChem::Model::Formula. Holds an ordered list of molecules, reactions, and reaction lists.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Node

#==, #accept, #hash, short_name

Constructor Details

#initialize(molecules: [], reactions: [], reaction_lists: []) ⇒ Document

Returns a new instance of Document.



11
12
13
14
15
# File 'lib/chemicalml/model/document.rb', line 11

def initialize(molecules: [], reactions: [], reaction_lists: [])
  @molecules = molecules
  @reactions = reactions
  @reaction_lists = reaction_lists
end

Instance Attribute Details

#moleculesObject

Returns the value of attribute molecules.



9
10
11
# File 'lib/chemicalml/model/document.rb', line 9

def molecules
  @molecules
end

#reaction_listsObject

Returns the value of attribute reaction_lists.



9
10
11
# File 'lib/chemicalml/model/document.rb', line 9

def reaction_lists
  @reaction_lists
end

#reactionsObject

Returns the value of attribute reactions.



9
10
11
# File 'lib/chemicalml/model/document.rb', line 9

def reactions
  @reactions
end

Instance Method Details

#childrenObject



17
18
19
# File 'lib/chemicalml/model/document.rb', line 17

def children
  molecules + reactions + reaction_lists
end

#value_attributesObject



21
22
23
24
25
26
# File 'lib/chemicalml/model/document.rb', line 21

def value_attributes
  {
    molecules: molecules, reactions: reactions,
    reaction_lists: reaction_lists
  }
end