Class: AsciiChem::Transform::CalculationBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/asciichem/transform.rb

Overview

Builds a Calculation from grammar captures. Params: "method/basis" string. Body: key-value lines.

Instance Method Summary collapse

Constructor Details

#initialize(params_str, body_str) ⇒ CalculationBuilder

Returns a new instance of CalculationBuilder.



319
320
321
322
# File 'lib/asciichem/transform.rb', line 319

def initialize(params_str, body_str)
  @params_str = strip_value(params_str)
  @body_str = strip_value(body_str)
end

Instance Method Details

#buildObject



324
325
326
327
328
329
330
331
# File 'lib/asciichem/transform.rb', line 324

def build
  method, basis = parse_method_basis(@params_str)
  Model::Calculation.new(
    method: method,
    basis: basis,
    properties: parse_properties(@body_str)
  )
end