class Prism::MatchWriteNode
Represents writing local variables using a regular expression match with named capture groups.
/(?<foo>bar)/ =~ baz ^^^^^^^^^^^^^^^^^^^^
Public Class Methods
Source
# File lib/prism/node.rb, line 17424 def initialize(source, node_id, location, flags, call, targets) @source = source @node_id = node_id @location = location @flags = flags @call = call @targets = targets end
Initialize a new MatchWriteNode node.
Public Instance Methods
Source
# File lib/prism/node.rb, line 17506 def call @call end
Returns the call attribute.
Source
# File lib/prism/node.rb, line 17514 def targets @targets end
Returns the targets attribute.
Node Interface
These methods are present on all subclasses of Node. Read the node interface docs for more information.
Public Class Methods
Public Instance Methods
Source
# File lib/prism/node.rb, line 17445 def accept(visitor) visitor.visit_match_write_node(self) end
See Node.accept.
Source
# File lib/prism/node.rb, line 17450 def child_nodes [call, *targets] end
See Node.child_nodes.
Also aliased as: deconstruct
Source
# File lib/prism/node.rb, line 17468 def comment_targets [call, *targets] #: Array[Prism::node | Location] end
See Node.comment_targets.
Source
# File lib/prism/node.rb, line 17463 def compact_child_nodes [call, *targets] end
Source
# File lib/prism/node.rb, line 17476 def copy(node_id: self.node_id, location: self.location, flags: self.flags, call: self.call, targets: self.targets) MatchWriteNode.new(source, node_id, location, flags, call, targets) end
Creates a copy of self with the given fields, using self as the template.
Source
# File lib/prism/node.rb, line 17455 def each_child_node return to_enum(:each_child_node) unless block_given? yield call targets.each { |node| yield node } end
See Node.each_child_node.
Repository
Methods related to Relocation.