pub type pm_class_node_t = pm_class_node;Expand description
ClassNode
Represents a class declaration involving the class keyword.
class Foo end
^^^^^^^^^^^^^Type: ::PM_CLASS_NODE
@extends pm_node_t
Aliased Type§
#[repr(C)]pub struct pm_class_node_t {
pub base: pm_node,
pub locals: pm_constant_id_list_t,
pub class_keyword_loc: pm_location_t,
pub constant_path: *mut pm_node,
pub inheritance_operator_loc: pm_location_t,
pub superclass: *mut pm_node,
pub body: *mut pm_node,
pub end_keyword_loc: pm_location_t,
pub name: u32,
}Fields§
§base: pm_nodeThe embedded base node.
locals: pm_constant_id_list_tClassNode#locals
class_keyword_loc: pm_location_tClassNode#class_keyword_loc
Represents the location of the class keyword.
class Foo end
^^^^^constant_path: *mut pm_nodeClassNode#constant_path
inheritance_operator_loc: pm_location_tClassNode#inheritance_operator_loc
Represents the location of the < operator.
class Foo < Bar
^superclass: *mut pm_nodeClassNode#superclass
Represents the superclass of the class.
class Foo < Bar
^^^body: *mut pm_nodeClassNode#body
Represents the body of the class.
class Foo
foo
^^^end_keyword_loc: pm_location_tClassNode#end_keyword_loc
Represents the location of the end keyword.
class Foo end
^^^name: u32ClassNode#name
The name of the class.
class Foo end # name `:Foo`