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 21671 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 21774 def call @call end
Returns the call attribute.
Source
# File lib/prism/node.rb, line 21784 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 21694 def accept(visitor) visitor.visit_match_write_node(self) end
See Node.accept.
Source
# File lib/prism/node.rb, line 21701 def child_nodes [call, *targets] end
See Node.child_nodes.
Also aliased as: deconstruct
Source
# File lib/prism/node.rb, line 21726 def comment_targets [call, *targets] #: Array[Prism::node | Location] end
See Node.comment_targets.
Source
# File lib/prism/node.rb, line 21719 def compact_child_nodes [call, *targets] end
Source
# File lib/prism/node.rb, line 21736 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 21709 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.