pm_call_operator_write_node_t

Type Alias pm_call_operator_write_node_t 

Source
pub type pm_call_operator_write_node_t = pm_call_operator_write_node;
Expand description

CallOperatorWriteNode

Represents the use of an assignment operator on a call.

 foo.bar += baz
 ^^^^^^^^^^^^^^

Type: ::PM_CALL_OPERATOR_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_operator_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 binary_operator: u32, pub binary_operator_loc: pm_location_t, pub value: *mut pm_node, }

Fields§

§base: pm_node

The embedded base node.

§receiver: *mut pm_node

CallOperatorWriteNode#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

CallOperatorWriteNode#call_operator_loc

Represents the Location of the call operator.

 foo.bar += value
    ^
§message_loc: pm_location_t

CallOperatorWriteNode#message_loc

Represents the Location of the message.

 foo.bar += value
     ^^^
§read_name: u32

CallOperatorWriteNode#read_name

Represents the name of the method being called.

 foo.bar += value # read_name `:bar`
     ^^^
§write_name: u32

CallOperatorWriteNode#write_name

Represents the name of the method being written to.

 foo.bar += value # write_name `:bar=`
     ^^^
§binary_operator: u32

CallOperatorWriteNode#binary_operator

Represents the binary operator being used.

 foo.bar += value # binary_operator `:+`
         ^
§binary_operator_loc: pm_location_t

CallOperatorWriteNode#binary_operator_loc

Represents the Location of the binary operator.

 foo.bar += value
         ^^
§value: *mut pm_node

CallOperatorWriteNode#value

Represents the value being assigned.

 foo.bar += value
            ^^^^^