Object_Parameter¶
- class Object_Parameter (abstract, logical)¶
An object parameter (implicit this or explicit) of a method.
- Direct parents:
inherits Parameter
- Ancestor classes and implemented interfaces:
Declarative_Node, General_Object_Interface, Logical_IR_Root, Named_Entity, Object, Parameter, Stack_Object, Symbol, Typed_Object
- Direct child classes:
subclass This_Parameter
subclass Explicit_Object_Parameter
Field
Kind
Type
Description
Promoted_Type (from Parameter)
semantic
class Type
This is the type that callers should provide for the parameter (they can also use a compatible type instead). It is also used by the linker to determine if two functions are different overloads. For the type of the parameter within the function definition, see Its_Type. Note that array/function decay applies to both Its_Type+Promoted_Type. Top-level cv-qualifiers are available only in Its_Type, and stripped from Promoted_Type. For old K&R function definitions without prototype, Promoted_Type is the type after the “default argument promotions”.
Its_Type (from Typed_Object)
semantic
class Type
the normalized, ‘underlying’ type
Object_Flags (from Typed_Object)
attribute
bitfield Object_Flags_Type
bits like “address taken” and “is pointer”
Parent (from Logical_IR_Root)
semantic
class Logical_IR_Root
Physical (from Logical_IR_Root)
semantic to physical
class Physical_IR_Root
Name (from Named_Entity)
attribute
builtin String