class Prism::GlobalVariableOperatorWriteNode
Represents assigning to a global variable using an operator that isn’t=.
$target += value^^^^^^^^^^^^^^^^
Attributes
attr_readerbinary_operator:Symbol
attr_reader value: Prism::node
Public Class Methods
Source
# File lib/prism/node.rb, line 7765definitialize(source,node_id,location,flags,name,name_loc,binary_operator_loc,value,binary_operator)@source =source@node_id =node_id@location =location@flags =flags@name =name@name_loc =name_loc@binary_operator_loc =binary_operator_loc@value =value@binary_operator =binary_operatorend
Initialize a newGlobalVariableOperatorWriteNode node.
Source
# File lib/prism/node.rb, line 7856defself.type:global_variable_operator_write_nodeend
Return a symbol representation of this node type. SeeNode::type.
Public Instance Methods
Source
# File lib/prism/node.rb, line 7862def===(other)other.is_a?(GlobalVariableOperatorWriteNode)&& (name===other.name)&& (name_loc.nil?==other.name_loc.nil?)&& (binary_operator_loc.nil?==other.binary_operator_loc.nil?)&& (value===other.value)&& (binary_operator===other.binary_operator)end
Implements case-equality for the node. This is effectively == but without comparing the value of locations. Locations are checked only for presence.
Source
# File lib/prism/node.rb, line 7778defaccept(visitor)visitor.visit_global_variable_operator_write_node(self)end
def accept: (Visitor visitor) -> void
Source
# File lib/prism/node.rb, line 7827defbinary_operator_loclocation =@binary_operator_locreturnlocationiflocation.is_a?(Location)@binary_operator_loc =Location.new(source,location>>32,location&0xFFFFFFFF)end
attr_readerbinary_operator_loc:Location
Source
# File lib/prism/node.rb, line 7783defchild_nodes [value]end
defchild_nodes: () ->Array
Source
# File lib/prism/node.rb, line 7793defcomment_targets [name_loc,binary_operator_loc,value]#: Array[Prism::node | Location]end
defcomment_targets: () -> Array[Node | Location]
Source
# File lib/prism/node.rb, line 7788defcompact_child_nodes [value]end
defcompact_child_nodes: () ->Array
Source
# File lib/prism/node.rb, line 7798defcopy(node_id:self.node_id,location:self.location,flags:self.flags,name:self.name,name_loc:self.name_loc,binary_operator_loc:self.binary_operator_loc,value:self.value,binary_operator:self.binary_operator)GlobalVariableOperatorWriteNode.new(source,node_id,location,flags,name,name_loc,binary_operator_loc,value,binary_operator)end
def copy: (?node_id:Integer, ?location:Location, ?flags:Integer, ?name:Symbol, ?name_loc:Location, ?binary_operator_loc:Location, ?value: Prism::node, ?binary_operator:Symbol) ->GlobalVariableOperatorWriteNode
Source
# File lib/prism/node.rb, line 7806defdeconstruct_keys(keys) {node_id:node_id,location:location,name:name,name_loc:name_loc,binary_operator_loc:binary_operator_loc,value:value,binary_operator:binary_operator }end
defdeconstruct_keys: (Array keys) -> { node_id:Integer, location:Location, name:Symbol,name_loc:Location,binary_operator_loc:Location, value: Prism::node,binary_operator:Symbol }
Source
# File lib/prism/node.rb, line 7846definspectInspectVisitor.compose(self)end
def inspect ->String
Source
Source
# File lib/prism/node_ext.rb, line 406defoperatordeprecated("binary_operator")binary_operatorend
Returns the binary operator used to modify the receiver. This method is deprecated in favor ofbinary_operator.
Source
# File lib/prism/node_ext.rb, line 413defoperator_locdeprecated("binary_operator_loc")binary_operator_locend
Returns the location of the binary operator used to modify the receiver. This method is deprecated in favor ofbinary_operator_loc.
Source
# File lib/prism/node.rb, line 7835defsave_binary_operator_loc(repository)repository.enter(node_id,:binary_operator_loc)end
Save thebinary_operator_loc location using the given saved source so that it can be retrieved later.
Source
# File lib/prism/node.rb, line 7822defsave_name_loc(repository)repository.enter(node_id,:name_loc)end
Save thename_loc location using the given saved source so that it can be retrieved later.