MLHS
represents a list of values being destructured on the left-hand side of a multiple assignment.
first, second, third = valueAttributes
whether or not there is a trailing comma at the end of this
list, which impacts destructuring. It’s an attr_accessor so that while the syntax tree is being built it can be set by its parent node
[
Array[ ARefField | ArgStar | ConstPathField | Field | Ident | MLHSParen | TopConstField | VarField ]
] the parts of the left-hand side of a multiple assignment
Public Class Methods Sourcedef initialize(parts:, location:, comma: false) @parts = parts @comma = comma @location = location @comments = [] endPublic Instance Methods Source
def ===(other) other.is_a?(MLHS) && ArrayMatch.call(parts, other.parts) && comma === other.comma endSource
def accept(visitor) visitor.visit_mlhs(self) endSource
def child_nodes parts endSource
def copy(parts: nil, location: nil, comma: nil) node = MLHS.new( parts: parts || self.parts, location: location || self.location, comma: comma || self.comma ) node.comments.concat(comments.map(&:copy)) node endSource
def deconstruct_keys(_keys) { parts: parts, location: location, comma: comma, comments: comments } endSource
def format(q) q.seplist(parts) { |part| q.format(part) } q.text(",") if comma end
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4