#[repr(C)]pub struct pm_call_or_write_node {
pub base: pm_node_t,
pub receiver: *mut pm_node,
pub call_operator_loc: pm_location_t,
pub message_loc: pm_location_t,
pub read_name: pm_constant_id_t,
pub write_name: pm_constant_id_t,
pub operator_loc: pm_location_t,
pub value: *mut pm_node,
}
Expand description
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_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
Fields§
§base: pm_node_t
The embedded base node.
receiver: *mut pm_node
CallOrWriteNode#receiver
The object that the method is being called on. This can be either nil
or any non-void expressions.
foo.bar ||= value
^^^
call_operator_loc: pm_location_t
CallOrWriteNode#call_operator_loc
Represents the location of the call operator.
foo.bar ||= value
^
message_loc: pm_location_t
CallOrWriteNode#message_loc
Represents the location of the message.
foo.bar ||= value
^^^
read_name: pm_constant_id_t
CallOrWriteNode#read_name
Represents the name of the method being called.
foo.bar ||= value # read_name `:bar`
^^^
write_name: pm_constant_id_t
CallOrWriteNode#write_name
Represents the name of the method being written to.
foo.bar ||= value # write_name `:bar=`
^^^
operator_loc: pm_location_t
CallOrWriteNode#operator_loc
Represents the location of the operator.
foo.bar ||= value
^^^
value: *mut pm_node
CallOrWriteNode#value
Represents the value being assigned.
foo.bar ||= value
^^^^^
Trait Implementations§
Source§impl Clone for pm_call_or_write_node
impl Clone for pm_call_or_write_node
Source§fn clone(&self) -> pm_call_or_write_node
fn clone(&self) -> pm_call_or_write_node
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for pm_call_or_write_node
impl Debug for pm_call_or_write_node
Source§impl Default for pm_call_or_write_node
impl Default for pm_call_or_write_node
impl Copy for pm_call_or_write_node
Auto Trait Implementations§
impl Freeze for pm_call_or_write_node
impl RefUnwindSafe for pm_call_or_write_node
impl !Send for pm_call_or_write_node
impl !Sync for pm_call_or_write_node
impl Unpin for pm_call_or_write_node
impl UnwindSafe for pm_call_or_write_node
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more