module RuboCop::AST::BinaryOperatorNode
Common functionality for nodes that are binary operations: `or`, `and` …
Public Instance Methods
conditions()
click to toggle source
Returns all of the conditions, including nested conditions, of the binary operation.
@return [Array<Node>] the left and right hand side of the binary operation and the let and right hand side of any nested binary operators
# File lib/rubocop/ast/node/mixin/binary_operator_node.rb, line 28 def conditions lhs, rhs = *self lhs = lhs.children.first if lhs.begin_type? rhs = rhs.children.first if rhs.begin_type? [lhs, rhs].each_with_object([]) do |side, collection| if side.operator_keyword? collection.concat(side.conditions) else collection << side end end end
lhs()
click to toggle source
Returns the left hand side node of the binary operation.
@return [Node] the left hand side of the binary operation
# File lib/rubocop/ast/node/mixin/binary_operator_node.rb, line 11 def lhs node_parts[0] end
rhs()
click to toggle source
Returns the right hand side node of the binary operation.
@return [Node] the right hand side of the binary operation
# File lib/rubocop/ast/node/mixin/binary_operator_node.rb, line 18 def rhs node_parts[1] end