pm_class_variable_write_node_t

Type Alias pm_class_variable_write_node_t 

Source
pub type pm_class_variable_write_node_t = pm_class_variable_write_node;
Expand description

ClassVariableWriteNode

Represents writing to a class variable.

 @@foo = 1
 ^^^^^^^^^

Type: ::PM_CLASS_VARIABLE_WRITE_NODE

@extends pm_node_t

Aliased Type§

#[repr(C)]
pub struct pm_class_variable_write_node_t { pub base: pm_node, pub name: u32, pub name_loc: pm_location_t, pub value: *mut pm_node, pub operator_loc: pm_location_t, }

Fields§

§base: pm_node

The embedded base node.

§name: u32

ClassVariableWriteNode#name

The name of the class variable, which is a @@ followed by an identifier.

 @@abc = 123     # name `@@abc`
 @@_test = :test # name `@@_test`
§name_loc: pm_location_t

ClassVariableWriteNode#name_loc

The Location of the variable name.

 @@foo = :bar
 ^^^^^
§value: *mut pm_node

ClassVariableWriteNode#value

The value to write to the class variable. This can be any non-void expression.

 @@foo = :bar
         ^^^^
 @@_xyz = 123
          ^^^
§operator_loc: pm_location_t

ClassVariableWriteNode#operator_loc

The Location of the = operator.

 @@foo = :bar
       ^