|
Prism Ruby parser
|
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):
| 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 ^^^
| 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 ^
| pm_location_t pm_call_or_write_node::message_loc |
CallOrWriteNode::message_loc.
Represents the location of the message.
foo.bar ||= value
^^^
| 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`
^^^
| 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=`
^^^
| pm_location_t pm_call_or_write_node::operator_loc |
CallOrWriteNode::operator_loc.
Represents the location of the operator.
foo.bar ||= value
^^^
| struct pm_node* pm_call_or_write_node::value |
CallOrWriteNode::value.
Represents the value being assigned.
foo.bar ||= value
^^^^^