|
Ruby 4.0.5p0 (2026-05-20 revision 64336ffd0ee9e1f4c05891695a3d7b49cb709721)
|
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 2391 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 2401 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 2431 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 2411 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 2381 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 2441 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 2421 of file ast.h.
Referenced by pm_dump_json().