instance method
Prism::BlockNode#===
===(other)
lib/prism/node.rb
View on GitHub ↗
# File tmp/rubies/ruby-4.0.0/lib/prism/node.rb, line 1972
def ===(other)
other.is_a?(BlockNode) &&
(locals.length == other.locals.length) &&
locals.zip(other.locals).all? { |left, right| left === right } &&
(parameters === other.parameters) &&
(body === other.body) &&
(opening_loc.nil? == other.opening_loc.nil?) &&
(closing_loc.nil? == other.closing_loc.nil?)
end
Implements case-equality for the node. This is effectively == but without comparing the value of locations. Locations are checked only for presence.