begin; foo; ensure; bar; end
^^^^^^^^^^^^
for foo in bar do end ^^^^^^^^^^^^^^^^^^^^^
if foo then bar end ^^^^^^^^^^^^^^^^^^^
bar if foo ^^^^^^^^^^
foo ? bar : baz ^^^^^^^^^^^^^^^
case foo; in bar; end ^^^^^^^^^^^^^^^^^^^^^
A node that is missing from the syntax tree. This is only used in the case of a syntax error. The parser gem doesn’t have such a concept, so we invent our own here.
module Foo; end ^^^^^^^^^^^^^^^
a or b ^^^^^^
The top-level program node.
foo(*bar)
^^^^
def foo((bar, *baz)); end
^^^^
def foo(*); bar(*); end
^
A list of statements.