#[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_tThe embedded base node.
receiver: *mut pm_nodeCallOrWriteNode#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_tCallOrWriteNode#call_operator_loc
Represents the location of the call operator.
foo.bar ||= value
^message_loc: pm_location_tCallOrWriteNode#message_loc
Represents the location of the message.
foo.bar ||= value
^^^read_name: pm_constant_id_tCallOrWriteNode#read_name
Represents the name of the method being called.
foo.bar ||= value # read_name `:bar`
^^^write_name: pm_constant_id_tCallOrWriteNode#write_name
Represents the name of the method being written to.
foo.bar ||= value # write_name `:bar=`
^^^operator_loc: pm_location_tCallOrWriteNode#operator_loc
Represents the location of the operator.
foo.bar ||= value
^^^value: *mut pm_nodeCallOrWriteNode#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 duplicate 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