a and b ^^^^^^^
begin end ^^^^^^^^^
A block on a keyword or method call.
foo ^^^
foo.bar ^^^^^^^
foo.bar() {} ^^^^^^^^^^^^
case foo; when bar; end ^^^^^^^^^^^^^^^^^^^^^^^
class Foo; end ^^^^^^^^^^^^^^
def foo; end ^^^^^^^^^^^^
def self.foo; end ^^^^^^^^^^^^^^^^^
defined? a ^^^^^^^^^^
defined?(a) ^^^^^^^^^^^
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.