pub type pm_call_and_write_node_t = pm_call_and_write_node;Expand description
CallAndWriteNode
Represents the use of the &&= operator on a call.
foo.bar &&= value
^^^^^^^^^^^^^^^^^Type: ::PM_CALL_AND_WRITE_NODE
Flags (#pm_call_node_flags):
- ::PM_CALL_NODE_FLAGS_SAFE_NAVIGATION
- ::PM_CALL_NODE_FLAGS_VARIABLE_CALL
- ::PM_CALL_NODE_FLAGS_ATTRIBUTE_WRITE
- ::PM_CALL_NODE_FLAGS_IGNORE_VISIBILITY
@extends pm_node_t
Aliased Type§
#[repr(C)]pub struct pm_call_and_write_node_t {
pub base: pm_node,
pub receiver: *mut pm_node,
pub call_operator_loc: pm_location_t,
pub message_loc: pm_location_t,
pub read_name: u32,
pub write_name: u32,
pub operator_loc: pm_location_t,
pub value: *mut pm_node,
}Fields§
§base: pm_nodeThe embedded base node.
receiver: *mut pm_nodeCallAndWriteNode#receiver
The object that the method is being called on. This can be either nil or any non-void expression.
foo.bar &&= value
^^^call_operator_loc: pm_location_tCallAndWriteNode#call_operator_loc
Represents the location of the call operator.
foo.bar &&= value
^message_loc: pm_location_tCallAndWriteNode#message_loc
Represents the location of the message.
foo.bar &&= value
^^^read_name: u32CallAndWriteNode#read_name
Represents the name of the method being called.
foo.bar &&= value # read_name `:bar`
^^^write_name: u32CallAndWriteNode#write_name
Represents the name of the method being written to.
foo.bar &&= value # write_name `:bar=`
^^^operator_loc: pm_location_tCallAndWriteNode#operator_loc
Represents the location of the operator.
foo.bar &&= value
^^^value: *mut pm_nodeCallAndWriteNode#value
Represents the value being assigned.
foo.bar &&= value
^^^^^