Method: Ascode::Parser::Main#parse

Defined in:
lib/ascode/parser/main.rb

#parseObject



15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/ascode/parser/main.rb', line 15

def parse
  @ast = []
  @skip_chars = 0
  @implicit_output = @do_implicit_output

  @code.split("").to_enum.each_with_index do |char, index|
    if @skip_chars > 0
      @skip_chars -= 1
      next
    end

    character char, index
  end

  @ast.push(type: :io, action: "output") if @implicit_output

  @ast
end