|
Ruby 3.5.0dev (2025-11-03 revision 4a3d8346a6d0e068508631541f6bc43e8b154ea1)
|
CallOrWriteNode. More...
#include <ast.h>
Data Fields | |
| pm_node_t | base |
| The embedded base node. | |
| struct pm_node * | receiver |
| CallOrWriteNode::receiver. | |
| pm_location_t | call_operator_loc |
| CallOrWriteNode::call_operator_loc. | |
| pm_location_t | message_loc |
| CallOrWriteNode::message_loc. | |
| pm_constant_id_t | read_name |
| CallOrWriteNode::read_name. | |
| pm_constant_id_t | write_name |
| CallOrWriteNode::write_name. | |
| pm_location_t | operator_loc |
| CallOrWriteNode::operator_loc. | |
| struct pm_node * | value |
| CallOrWriteNode::value. | |
Data Fields inherited from pm_node | |
| pm_node_type_t | type |
| This represents the type of the node. | |
| pm_node_flags_t | flags |
| This represents any flags on the node. | |
| uint32_t | node_id |
| The unique identifier for this node, which is deterministic based on the source. | |
| pm_location_t | location |
| This is the location of the node in the source. | |
CallOrWriteNode.
Represents the use of the ||= operator on a call.
foo.bar ||= value ^^^^^^^^^^^^^^^^^
Type: PM_CALL_OR_WRITE_NODE
Flags (pm_call_node_flags):
| pm_node_t pm_call_or_write_node::base |
| pm_location_t pm_call_or_write_node::call_operator_loc |
CallOrWriteNode::call_operator_loc.
Represents the location of the call operator.
foo.bar ||= value ^
Definition at line 2381 of file ast.h.
Referenced by pm_dump_json().
| pm_location_t pm_call_or_write_node::message_loc |
CallOrWriteNode::message_loc.
Represents the location of the message.
foo.bar ||= value
^^^
Definition at line 2391 of file ast.h.
Referenced by pm_dump_json().
| pm_location_t pm_call_or_write_node::operator_loc |
CallOrWriteNode::operator_loc.
Represents the location of the operator.
foo.bar ||= value
^^^
Definition at line 2421 of file ast.h.
Referenced by pm_dump_json().
| pm_constant_id_t pm_call_or_write_node::read_name |
CallOrWriteNode::read_name.
Represents the name of the method being called.
foo.bar ||= value # read_name `:bar`
^^^
Definition at line 2401 of file ast.h.
Referenced by pm_dump_json().
| struct pm_node* pm_call_or_write_node::receiver |
CallOrWriteNode::receiver.
The object that the method is being called on. This can be either nil or any non-void expressions.
foo.bar ||= value ^^^
Definition at line 2371 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().
| struct pm_node* pm_call_or_write_node::value |
CallOrWriteNode::value.
Represents the value being assigned.
foo.bar ||= value
^^^^^
Definition at line 2431 of file ast.h.
Referenced by pm_dump_json(), pm_node_destroy(), and pm_visit_child_nodes().
| pm_constant_id_t pm_call_or_write_node::write_name |
CallOrWriteNode::write_name.
Represents the name of the method being written to.
foo.bar ||= value # write_name `:bar=`
^^^
Definition at line 2411 of file ast.h.
Referenced by pm_dump_json().