Module: RoboDog::Parser

Defined in:
lib/robo_dog/parser.rb

Constant Summary collapse

DataError =
Class.new(StandardError)

Class Method Summary collapse

Class Method Details

.parse(input) ⇒ Object



38
39
40
41
42
43
44
45
46
47
48
49
50
51
# File 'lib/robo_dog/parser.rb', line 38

def parse(input)
  paddock = @paddock_parser.call(input)
  robots = []
  loop do
    robot_attrs = @robot_extractor.call(input)
    break unless robot_attrs
    robots << @robot_factory.build(robot_attrs)
  end

  {
    paddock: paddock,
    robots: robots
  }
end