|
Ruby 3.5.0dev (2025-10-28 revision a27f430de7fdf9b4ab9b158c44aa40b81bd705cd)
|
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 2368 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 2378 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 2408 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 2388 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 2358 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 2418 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 2398 of file ast.h.
Referenced by pm_dump_json().