Module: Chemicalml::Cml::Translator::ValueTranslations::ClassMethods
- Included in:
- Chemicalml::Cml::Translator
- Defined in:
- lib/chemicalml/cml/translator/value_translations.rb
Instance Method Summary collapse
- #array_from_canonical(array) ⇒ Object
- #array_to_canonical(cml_array) ⇒ Object
- #formula_from_canonical(formula) ⇒ Object
- #formula_to_canonical(cml_formula) ⇒ Object
- #label_from_canonical(label) ⇒ Object
- #label_to_canonical(cml_label) ⇒ Object
- #matrix_from_canonical(matrix) ⇒ Object
- #matrix_to_canonical(cml_matrix) ⇒ Object
- #metadata_from_canonical(md) ⇒ Object
- #metadata_to_canonical(cml_md) ⇒ Object
- #parameter_from_canonical(param) ⇒ Object
- #parameter_to_canonical(cml_param) ⇒ Object
- #property_from_canonical(prop) ⇒ Object
- #property_to_canonical(cml_prop) ⇒ Object
- #scalar_from_canonical(scalar) ⇒ Object
- #scalar_to_canonical(cml_scalar) ⇒ Object
- #value_container_from_canonical(value) ⇒ Object
- #value_container_to_canonical(cml_value) ⇒ Object
Instance Method Details
#array_from_canonical(array) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 52 def array_from_canonical(array) return nil unless array Cml::Array.new( content: Array(array.values).join(" "), data_type: array.data_type, units: array.units, size: array.size, id: array.id, title: array.title, dict_ref: array.dict_ref ) end |
#array_to_canonical(cml_array) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 38 def array_to_canonical(cml_array) return nil unless cml_array Model::Array.new( values: cml_array.content.to_s.split, data_type: cml_array.data_type, units: cml_array.units, size: cml_array.size, id: cml_array.id, title: cml_array.title, dict_ref: cml_array.dict_ref ) end |
#formula_from_canonical(formula) ⇒ Object
231 232 233 234 235 236 237 238 239 240 241 242 243 244 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 231 def formula_from_canonical(formula) return nil unless formula Cml::Formula.new( id: formula.id, concise: formula.concise, inline: formula.inline, formal_charge: formula.formal_charge, count: formula.count, title: formula.title, convention: formula.convention, dict_ref: formula.dict_ref ) end |
#formula_to_canonical(cml_formula) ⇒ Object
216 217 218 219 220 221 222 223 224 225 226 227 228 229 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 216 def formula_to_canonical(cml_formula) return nil unless cml_formula Model::Formula.new( id: cml_formula.id, concise: cml_formula.concise, inline: cml_formula.inline, formal_charge: cml_formula.formal_charge, count: cml_formula.count, title: cml_formula.title, convention: cml_formula.convention, dict_ref: cml_formula.dict_ref ) end |
#label_from_canonical(label) ⇒ Object
181 182 183 184 185 186 187 188 189 190 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 181 def label_from_canonical(label) return nil unless label Cml::Label.new( id: label.id, value: label.value, dict_ref: label.dict_ref, convention: label.convention ) end |
#label_to_canonical(cml_label) ⇒ Object
170 171 172 173 174 175 176 177 178 179 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 170 def label_to_canonical(cml_label) return nil unless cml_label Model::Label.new( id: cml_label.id, value: cml_label.value, dict_ref: cml_label.dict_ref, convention: cml_label.convention ) end |
#matrix_from_canonical(matrix) ⇒ Object
81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 81 def matrix_from_canonical(matrix) return nil unless matrix Cml::Matrix.new( content: Array(matrix.values).join(" "), rows: matrix.rows, columns: matrix.columns, data_type: matrix.data_type, units: matrix.units, id: matrix.id, title: matrix.title, dict_ref: matrix.dict_ref ) end |
#matrix_to_canonical(cml_matrix) ⇒ Object
66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 66 def matrix_to_canonical(cml_matrix) return nil unless cml_matrix Model::Matrix.new( values: cml_matrix.content.to_s.split, rows: cml_matrix.rows, columns: cml_matrix.columns, data_type: cml_matrix.data_type, units: cml_matrix.units, id: cml_matrix.id, title: cml_matrix.title, dict_ref: cml_matrix.dict_ref ) end |
#metadata_from_canonical(md) ⇒ Object
204 205 206 207 208 209 210 211 212 213 214 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 204 def (md) return nil unless md Cml::Metadata.new( id: md.id, name: md.name, content: md.content, convention: md.convention, title: md.title ) end |
#metadata_to_canonical(cml_md) ⇒ Object
192 193 194 195 196 197 198 199 200 201 202 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 192 def (cml_md) return nil unless cml_md Model::Metadata.new( id: cml_md.id, name: cml_md.name, content: cml_md.content, convention: cml_md.convention, title: cml_md.title ) end |
#parameter_from_canonical(param) ⇒ Object
155 156 157 158 159 160 161 162 163 164 165 166 167 168 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 155 def parameter_from_canonical(param) return nil unless param value = value_container_from_canonical(param.value) Cml::Parameter.new( id: param.id, title: param.title, dict_ref: param.dict_ref, convention: param.convention, scalar: value.is_a?(Cml::Scalar) ? value : nil, array: value.is_a?(Cml::Array) ? value : nil, matrix: value.is_a?(Cml::Matrix) ? value : nil ) end |
#parameter_to_canonical(cml_param) ⇒ Object
143 144 145 146 147 148 149 150 151 152 153 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 143 def parameter_to_canonical(cml_param) return nil unless cml_param Model::Parameter.new( id: cml_param.id, title: cml_param.title, dict_ref: cml_param.dict_ref, convention: cml_param.convention, value: parameter_value_to_canonical(cml_param) ) end |
#property_from_canonical(prop) ⇒ Object
128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 128 def property_from_canonical(prop) return nil unless prop value = value_container_from_canonical(prop.value) Cml::Property.new( id: prop.id, title: prop.title, dict_ref: prop.dict_ref, convention: prop.convention, scalar: value.is_a?(Cml::Scalar) ? value : nil, array: value.is_a?(Cml::Array) ? value : nil, matrix: value.is_a?(Cml::Matrix) ? value : nil ) end |
#property_to_canonical(cml_prop) ⇒ Object
116 117 118 119 120 121 122 123 124 125 126 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 116 def property_to_canonical(cml_prop) return nil unless cml_prop Model::Property.new( id: cml_prop.id, title: cml_prop.title, dict_ref: cml_prop.dict_ref, convention: cml_prop.convention, value: property_value_to_canonical(cml_prop) ) end |
#scalar_from_canonical(scalar) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 25 def scalar_from_canonical(scalar) return nil unless scalar Cml::Scalar.new( content: scalar.value, data_type: scalar.data_type, units: scalar.units, id: scalar.id, title: scalar.title, dict_ref: scalar.dict_ref ) end |
#scalar_to_canonical(cml_scalar) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 12 def scalar_to_canonical(cml_scalar) return nil unless cml_scalar Model::Scalar.new( value: cml_scalar.content, data_type: cml_scalar.data_type, units: cml_scalar.units, id: cml_scalar.id, title: cml_scalar.title, dict_ref: cml_scalar.dict_ref ) end |
#value_container_from_canonical(value) ⇒ Object
108 109 110 111 112 113 114 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 108 def value_container_from_canonical(value) case value when Model::Matrix then matrix_from_canonical(value) when Model::Array then array_from_canonical(value) when Model::Scalar then scalar_from_canonical(value) end end |
#value_container_to_canonical(cml_value) ⇒ Object
96 97 98 99 100 101 102 103 104 105 106 |
# File 'lib/chemicalml/cml/translator/value_translations.rb', line 96 def value_container_to_canonical(cml_value) return nil unless cml_value if cml_value.is_a?(Cml::Matrix) matrix_to_canonical(cml_value) elsif cml_value.is_a?(Cml::Array) array_to_canonical(cml_value) elsif cml_value.is_a?(Cml::Scalar) scalar_to_canonical(cml_value) end end |