Class: CompositionTransformer
- Inherits:
-
Parslet::Transform
- Object
- Parslet::Transform
- CompositionTransformer
- Defined in:
- lib/oddb2xml/parslet_compositions.rb
Direct Known Subclasses
Constant Summary collapse
- @@more_info =
nil
- @@excipiens =
nil
Class Method Summary collapse
- .add_excipiens(info) ⇒ Object
- .check_e_substance(substance) ⇒ Object
- .clear_substances ⇒ Object
- .corresp ⇒ Object
- .excipiens ⇒ Object
- .get_ratio(parse_info) ⇒ Object
- .substances ⇒ Object
Class Method Details
.add_excipiens(info) ⇒ Object
143 144 145 146 147 148 149 150 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 143 def CompositionTransformer.add_excipiens(info) @@more_info = nil @@excipiens = ParseSubstance.new(info[:excipiens_description] ? info[:excipiens_description] : 'Excipiens') @@excipiens.dose = info[:dose] if info[:dose] @@excipiens.more_info = CompositionTransformer.get_ratio(info) @@excipiens.cdose = info[:dose_corresp] if info[:dose_corresp] @@excipiens.more_info = info[:more_info] if info[:more_info] end |
.check_e_substance(substance) ⇒ Object
128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 128 def CompositionTransformer.check_e_substance(substance) return unless /^E \d\d\d/.match(substance.name) unless substance.more_info case substance.name[2] when "1" substance.more_info = 'color.' when "2" substance.more_info = 'conserv.' else end substance.more_info ||= @@more_info end @@more_info = substance.more_info end |
.clear_substances ⇒ Object
285 286 287 288 289 290 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 285 def CompositionTransformer.clear_substances @@more_info = nil @@substances = [] @@excipiens = nil @@corresp = nil end |
.corresp ⇒ Object
297 298 299 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 297 def CompositionTransformer.corresp @@corresp ? @@corresp.clone : nil end |
.excipiens ⇒ Object
294 295 296 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 294 def CompositionTransformer.excipiens @@excipiens ? @@excipiens.clone : nil end |
.get_ratio(parse_info) ⇒ Object
116 117 118 119 120 121 122 123 124 125 126 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 116 def CompositionTransformer.get_ratio(parse_info) if parse_info[:ratio] if parse_info[:ratio].to_s.length > 0 and parse_info[:ratio].to_s != ', ' parse_info[:ratio].to_s.sub(/^,\s+/, '').sub(/,\s+$/,'') else nil end else nil end end |
.substances ⇒ Object
291 292 293 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 291 def CompositionTransformer.substances @@substances.clone end |