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
147 148 149 150 151 152 153 154 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 147 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
132 133 134 135 136 137 138 139 140 141 142 143 144 145 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 132 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
289 290 291 292 293 294 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 289 def CompositionTransformer.clear_substances @@more_info = nil @@substances = [] @@excipiens = nil @@corresp = nil end |
.corresp ⇒ Object
301 302 303 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 301 def CompositionTransformer.corresp @@corresp ? @@corresp.clone : nil end |
.excipiens ⇒ Object
298 299 300 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 298 def CompositionTransformer.excipiens @@excipiens ? @@excipiens.clone : nil end |
.get_ratio(parse_info) ⇒ Object
120 121 122 123 124 125 126 127 128 129 130 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 120 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
295 296 297 |
# File 'lib/oddb2xml/parslet_compositions.rb', line 295 def CompositionTransformer.substances @@substances.clone end |