class RuboCop::AST::ForNode
A node extension for `for` nodes. This will be used in place of a plain node when the builder constructs the AST
, making its methods available to all `for` nodes within RuboCop
.
Public Instance Methods
Returns the body of the `for` loop.
@return [Node, nil] The body of the `for` loop.
# File lib/rubocop/ast/node/for_node.rb, line 48 def body node_parts[2] end
Returns the collection the `for` loop is iterating over.
@return [Node] The collection the `for` loop is iterating over
# File lib/rubocop/ast/node/for_node.rb, line 41 def collection node_parts[1] end
Checks whether the `for` node has a `do` keyword.
@return [Boolean] whether the `for` node has a `do` keyword
# File lib/rubocop/ast/node/for_node.rb, line 19 def do? loc.begin && loc.begin.is?('do') end
Returns the keyword of the `for` statement as a string.
@return [String] the keyword of the `until` statement
# File lib/rubocop/ast/node/for_node.rb, line 12 def keyword 'for' end
Custom destructuring method. This can be used to normalize destructuring for different variations of the node.
@return [Array<Node>] the different parts of the `until` statement
# File lib/rubocop/ast/node/for_node.rb, line 56 def node_parts to_a end
Returns the iteration variable of the `for` loop.
@return [Node] The iteration variable of the `for` loop
# File lib/rubocop/ast/node/for_node.rb, line 34 def variable node_parts[0] end
Checks whether this node body is a void context. Always `true` for `for`.
@return [true] whether the `for` node body is a void context
# File lib/rubocop/ast/node/for_node.rb, line 27 def void_context? true end