Class: RuboCop::AST::NodePattern::Node::Sequence
| Relationships & Source Files | |
| Super Chains via Extension / Inclusion / Inheritance | |
|
Class Chain:
self,
::RuboCop::AST::NodePattern::Node,
::RuboCop::SimpleForwardable,
Parser::AST::Node
|
|
|
Instance Chain:
self,
ForbidInSeqHead,
::RuboCop::AST::NodePattern::Node,
::RuboCop::AST::Descendence,
Parser::AST::Node
|
|
| Inherits: |
RuboCop::AST::NodePattern::Node
|
| Defined in: | lib/rubocop/ast/node_pattern/node.rb |
Overview
Node class for (type first second …)
Constant Summary
Class Method Summary
::RuboCop::SimpleForwardable - Extended
Instance Attribute Summary
::RuboCop::AST::NodePattern::Node - Inherited
| #capture?, | |
| #matches_within_set? | that matches within a Set (e.g. |
| #rest? | To be overridden by subclasses. |
| #variadic? | |
Instance Method Summary
ForbidInSeqHead - Included
::RuboCop::AST::NodePattern::Node - Inherited
| #arity | Note: |
| #arity_range, #child, #children_nodes, #in_sequence_head, #nb_captures, #source_range, #with | |
::RuboCop::AST::Descendence - Included
| #child_nodes | Returns an array of child nodes. |
| #descendants | Returns an array of descendant nodes. |
| #each_child_node | Calls the given block for each child node. |
| #each_descendant | Calls the given block for each descendant node with depth first order. |
| #each_node | Calls the given block for the receiver and each descendant node in depth-first order. |
Constructor Details
.new(type, children = [], properties = {}) ⇒ Sequence
# File 'lib/rubocop/ast/node_pattern/node.rb', line 120
def initialize(type, children = [], properties = {}) if (replace = children.first.in_sequence_head) children = [*replace, *children[1..]] end super end