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 ^^^^^^^^^^^^^^^
next ^^^^ next foo ^^^^^^^^
a or b ^^^^^^
The top-level program node.
begin; rescue; end ^^^^^^^
return ^^^^^^ return 1 ^^^^^^^^
foo(*bar) ^^^^ def foo((bar, *baz)); end ^^^^ def foo(*); bar(*); end ^
A list of statements.
super(foo) ^^^^^^^^^^
undef foo ^^^^^^^^^
unless foo; bar end ^^^^^^^^^^^^^^^^^^^ bar unless foo ^^^^^^^^^^^^^^
case foo; when bar; end ^^^^^^^^^^^^^
while foo; bar end ^^^^^^^^^^^^^^^^^^ bar while foo ^^^^^^^^^^^^^
yield ^^^^^ yield 1 ^^^^^^^