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 21835 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 21938 def call @call end
Returns the call attribute.
Source
# File lib/prism/node.rb, line 21948 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 21858 def accept(visitor) visitor.visit_match_write_node(self) end
See Node.accept.
Source
# File lib/prism/node.rb, line 21865 def child_nodes [call, *targets] end
See Node.child_nodes.
Also aliased as: deconstruct
Source
# File lib/prism/node.rb, line 21890 def comment_targets [call, *targets] #: Array[Prism::node | Location] end
See Node.comment_targets.
Source
# File lib/prism/node.rb, line 21883 def compact_child_nodes [call, *targets] end
Source
# File lib/prism/node.rb, line 21900 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 21873 def each_child_node(&blk) 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.