You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
The key has expired.
Added
RegularExpressionNode#options and InterpolatedRegularExpressionNode#options are now provided. These return integers that match up to the Regexp#options API.
Greatly improved Node#inspect and Node#pretty_print APIs.
MatchLastLineNode and InterpolatedMatchLastLineNode are introduced to represent using a regular expression as the predicate of an if or unless statement.
IntegerNode now has a base flag on it.
Heredocs that were previously InterpolatedStringNode and InterpolatedXStringNode nodes without any actual interpolation are now StringNode and XStringNode, respectively.
StringNode now has a frozen? flag on it, which respects the frozen_string_literal magic comment.
Numbered parameters are now supported, and are properly represented using LocalVariableReadNode nodes.
ImplicitNode is introduced, which wraps implicit calls, local variable reads, or constant reads in omitted hash values.
YARP::Dispatcher is introduced, which provides a way for multiple objects to listen for certain events on the AST while it is being walked. This is effectively a way to implement a more efficient visitor pattern when you have many different uses for the AST.
Changed
BREAKING: Flags fields are now marked as private, to ensure we can change their implementation under the hood. Actually querying should be through the accessor methods.
BREAKING: AliasNode is now split into AliasMethodNode and AliasGlobalVariableNode.
Method definitions on local variables is now correctly handled.
Unary minus precedence has been fixed.
Concatenating character literals with string literals is now fixed.
Many more invalid syntaxes are now properly rejected.
BREAKING: Comments now no longer include their trailing newline.