B2R2


ItaniumExpr Type

Union cases

Union case Description

ABITag(string, string)

Full Usage: ABITag(string, string)

Parameters:
    Item1 : string
    Item2 : string

Item1 : string
Item2 : string

Arguments ItaniumExpr list

Full Usage: Arguments ItaniumExpr list

Parameters:

Many arguments.

Item : ItaniumExpr list

ArrayPointer(ItaniumExpr option, ItaniumExpr list, ItaniumExpr)

Full Usage: ArrayPointer(ItaniumExpr option, ItaniumExpr list, ItaniumExpr)

Parameters:

Array arguments encoded with their size and type.

Item1 : ItaniumExpr option
Item2 : ItaniumExpr list
Item3 : ItaniumExpr

Binary expression is composed operator and two arguments.

Item1 : ItaniumExpr
Item2 : ItaniumExpr
Item3 : ItaniumExpr

Builtin types.

Item : BuiltinTypeIndicator

CVR(ItaniumExpr, ItaniumExpr)

Full Usage: CVR(ItaniumExpr, ItaniumExpr)

Parameters:

CV qualifiers followed by reference in mangled form. This form is only used in nested names.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

CVqualifier ConsTandVolatile

Full Usage: CVqualifier ConsTandVolatile

Parameters:

Constant and volatile qualifiers. This includes, const, volatile and const volatile together.

Item : ConsTandVolatile

CallExpr ItaniumExpr list

Full Usage: CallExpr ItaniumExpr list

Parameters:
Item : ItaniumExpr list

CallOffset CallOffSet

Full Usage: CallOffset CallOffSet

Parameters:

Adjustment offset for virtual override thunks.

Item : CallOffSet

CastOperator(string, ItaniumExpr)

Full Usage: CastOperator(string, ItaniumExpr)

Parameters:

Cast and Vendor extended operators.

Item1 : string
Item2 : ItaniumExpr

CastingExpr(CasTing, ItaniumExpr, ItaniumExpr)

Full Usage: CastingExpr(CasTing, ItaniumExpr, ItaniumExpr)

Parameters:
Item1 : CasTing
Item2 : ItaniumExpr
Item3 : ItaniumExpr

Clone ItaniumExpr list

Full Usage: Clone ItaniumExpr list

Parameters:
Item : ItaniumExpr list

Constructors and Destructors.

Item : ConstructorDestructor

ConstVolatile(ItaniumExpr, ItaniumExpr)

Full Usage: ConstVolatile(ItaniumExpr, ItaniumExpr)

Parameters:

CV qualifiers followed by pointers. For example, const*.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

ConstructionVtable(ItaniumExpr, ItaniumExpr)

Full Usage: ConstructionVtable(ItaniumExpr, ItaniumExpr)

Parameters:
Item1 : ItaniumExpr
Item2 : ItaniumExpr

ConversionMore(ItaniumExpr, ItaniumExpr list)

Full Usage: ConversionMore(ItaniumExpr, ItaniumExpr list)

Parameters:

Conversion with more than one argument.

Item1 : ItaniumExpr
Item2 : ItaniumExpr list

ConversionOne(ItaniumExpr, ItaniumExpr)

Full Usage: ConversionOne(ItaniumExpr, ItaniumExpr)

Parameters:

Conversion with one argument.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

DeclType ItaniumExpr

Full Usage: DeclType ItaniumExpr

Parameters:
Item : ItaniumExpr

DotExpr(ItaniumExpr, ItaniumExpr)

Full Usage: DotExpr(ItaniumExpr, ItaniumExpr)

Parameters:

expr.name .

Item1 : ItaniumExpr
Item2 : ItaniumExpr

DotPointerExpr(ItaniumExpr, ItaniumExpr)

Full Usage: DotPointerExpr(ItaniumExpr, ItaniumExpr)

Parameters:

expr.*expr .

Item1 : ItaniumExpr
Item2 : ItaniumExpr

Dummy string

Full Usage: Dummy string

Parameters:
    Item : string

Dummy type.

Item : string

ExprMeasure(MeasureExpr, ItaniumExpr)

Full Usage: ExprMeasure(MeasureExpr, ItaniumExpr)

Parameters:
Item1 : MeasureExpr
Item2 : ItaniumExpr

ExpressionArgPack ItaniumExpr

Full Usage: ExpressionArgPack ItaniumExpr

Parameters:

Expression for expanding argument pack.

Item : ItaniumExpr

ExternalName ItaniumExpr

Full Usage: ExternalName ItaniumExpr

Parameters:
Item : ItaniumExpr

Function with optional scope encoding(s), name (name, template, nestedname and etc.), return and arguments.

Item1 : ItaniumExpr list
Item2 : ItaniumExpr
Item3 : ItaniumExpr
Item4 : ItaniumExpr
Item5 : ItaniumExpr

FunctionBegin(ItaniumExpr list option, ItaniumExpr)

Full Usage: FunctionBegin(ItaniumExpr list option, ItaniumExpr)

Parameters:

Beginning of function pointer in mangling which is consisted of qualifiers and pointers. First list expression is qualifiers with pointers, such as const*, second expression is successive pointers (For example, *****).

Item1 : ItaniumExpr list option
Item2 : ItaniumExpr

FunctionPointer(ItaniumExpr, ItaniumExpr option, ItaniumExpr, ItaniumExpr)

Full Usage: FunctionPointer(ItaniumExpr, ItaniumExpr option, ItaniumExpr, ItaniumExpr)

Parameters:

Function Pointer is composed of pointers and optional qualifiers, return and arguments.

Item1 : ItaniumExpr
Item2 : ItaniumExpr option
Item3 : ItaniumExpr
Item4 : ItaniumExpr

Functionarg(ItaniumExpr option, ItaniumExpr)

Full Usage: Functionarg(ItaniumExpr option, ItaniumExpr)

Parameters:

Created for special case of CV qualifiers, first element is qualifier.

Item1 : ItaniumExpr option
Item2 : ItaniumExpr

GuardVariable(ItaniumExpr list, ItaniumExpr)

Full Usage: GuardVariable(ItaniumExpr list, ItaniumExpr)

Parameters:
Item1 : ItaniumExpr list
Item2 : ItaniumExpr

LambdaExpression(ItaniumExpr, ItaniumExpr)

Full Usage: LambdaExpression(ItaniumExpr, ItaniumExpr)

Parameters:
Item1 : ItaniumExpr
Item2 : ItaniumExpr

Literal(ItaniumExpr, ItaniumExpr)

Full Usage: Literal(ItaniumExpr, ItaniumExpr)

Parameters:

Literals encoded with their type and value.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

MemberPAsArgument(ItaniumExpr, ItaniumExpr)

Full Usage: MemberPAsArgument(ItaniumExpr, ItaniumExpr)

Parameters:

Member pointers as independent arguments.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

MemberPointer ItaniumExpr

Full Usage: MemberPointer ItaniumExpr

Parameters:

Pointer to member function.

Item : ItaniumExpr

Name string

Full Usage: Name string

Parameters:
    Item : string

Name composed of string.

Item : string

NestedName(ItaniumExpr, ItaniumExpr list)

Full Usage: NestedName(ItaniumExpr, ItaniumExpr list)

Parameters:

Nested name composed of optional qualifiers and list of names, Sx abbreviation, templates and operator names.

Item1 : ItaniumExpr
Item2 : ItaniumExpr list

Num int

Full Usage: Num int

Parameters:
    Item : int

Number.

Item : int

Num64 uint64

Full Usage: Num64 uint64

Parameters:
    Item : uint64

Item : uint64

Operators OperatorIndicator

Full Usage: Operators OperatorIndicator

Parameters:

Operators.

Item : OperatorIndicator

ParameterRef ItaniumExpr

Full Usage: ParameterRef ItaniumExpr

Parameters:

Function paramater references.

Item : ItaniumExpr

Pointer ItaniumExpr list

Full Usage: Pointer ItaniumExpr list

Parameters:

Many pointers encoded by consecutive 'P's.

Item : ItaniumExpr list

PointerArg(string, ItaniumExpr option, ItaniumExpr)

Full Usage: PointerArg(string, ItaniumExpr option, ItaniumExpr)

Parameters:

Arguments with pointer (string part, single pointer) and CV qualifiers. The string part is a single character string "P". It is defined like this for making substitution easier.

Item1 : string
Item2 : ItaniumExpr option
Item3 : ItaniumExpr

RTTIandVirtualTable(RTTIVirtualTable, ItaniumExpr)

Full Usage: RTTIandVirtualTable(RTTIVirtualTable, ItaniumExpr)

Parameters:

Virtual Table and RTTI values.

Item1 : RTTIVirtualTable
Item2 : ItaniumExpr

RefArg(ItaniumExpr, ItaniumExpr)

Full Usage: RefArg(ItaniumExpr, ItaniumExpr)

Parameters:

Arguments with reference qualifiers. Second expression can be PointerArg too.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

Reference qualifiers, & and &&.

Item : ReferenceQualifier

ReferenceArg(ItaniumExpr, ItaniumExpr option)

Full Usage: ReferenceArg(ItaniumExpr, ItaniumExpr option)

Parameters:

CV qualifiers followed by reference qualifier in code. For example, const&.

Item1 : ItaniumExpr
Item2 : ItaniumExpr option

ReferenceTemporary(ItaniumExpr, ItaniumExpr)

Full Usage: ReferenceTemporary(ItaniumExpr, ItaniumExpr)

Parameters:

Lifetime - Extended temporary.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

Restrict RestrictQualifier

Full Usage: Restrict RestrictQualifier

Parameters:

Restrict qualifer which is applied to pointer arguments. There can be const or volatile between pointer sign (*) and restrict qualifier.

Item : RestrictQualifier

Scope ItaniumExpr

Full Usage: Scope ItaniumExpr

Parameters:
Item : ItaniumExpr

ScopeEncoding(ItaniumExpr, ItaniumExpr)

Full Usage: ScopeEncoding(ItaniumExpr, ItaniumExpr)

Parameters:
Item1 : ItaniumExpr
Item2 : ItaniumExpr

ScopedLambda(ItaniumExpr, ItaniumExpr option, ItaniumExpr)

Full Usage: ScopedLambda(ItaniumExpr, ItaniumExpr option, ItaniumExpr)

Parameters:

Lambda xpression together with scope encoding.

Item1 : ItaniumExpr
Item2 : ItaniumExpr option
Item3 : ItaniumExpr

SingleArg ItaniumExpr

Full Usage: SingleArg ItaniumExpr

Parameters:

Function, template, operator or expression argument.

Item : ItaniumExpr

SingleP char

Full Usage: SingleP char

Parameters:
    Item : char

Single pointer encoded by character 'P'.

Item : char

Specific int

Full Usage: Specific int

Parameters:
    Item : int

Used for marking the index of used template substitution (e.g., T2_ gives 2).

Item : int

Sxname(ItaniumExpr, ItaniumExpr)

Full Usage: Sxname(ItaniumExpr, ItaniumExpr)

Parameters:

Sx abrreviation and name.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

Sxoperator(ItaniumExpr, ItaniumExpr)

Full Usage: Sxoperator(ItaniumExpr, ItaniumExpr)

Parameters:

Sx abbreviation and operator.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

Sxsubstitution Sxabbreviation

Full Usage: Sxsubstitution Sxabbreviation

Parameters:

Sx abbreviation. For example, St = std, Sa = std :: allocator.

Item : Sxabbreviation

Template(ItaniumExpr, ItaniumExpr)

Full Usage: Template(ItaniumExpr, ItaniumExpr)

Parameters:

Template composed of name and arguments.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

TemplateSub(ItaniumExpr, int)

Full Usage: TemplateSub(ItaniumExpr, int)

Parameters:

Template substituion.

Item1 : ItaniumExpr
Item2 : int

TransactionSafeFunction ItaniumExpr

Full Usage: TransactionSafeFunction ItaniumExpr

Parameters:

Transaction entry point for function declared transaction safe.

Item : ItaniumExpr

TypeMeasure(MeasureType, ItaniumExpr)

Full Usage: TypeMeasure(MeasureType, ItaniumExpr)

Parameters:
Item1 : MeasureType
Item2 : ItaniumExpr

UnaryExpr(ItaniumExpr, ItaniumExpr)

Full Usage: UnaryExpr(ItaniumExpr, ItaniumExpr)

Parameters:

Unary expression is composed of operator and single argument.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

UnnamedType ItaniumExpr

Full Usage: UnnamedType ItaniumExpr

Parameters:
Item : ItaniumExpr

Vector(ItaniumExpr, ItaniumExpr)

Full Usage: Vector(ItaniumExpr, ItaniumExpr)

Parameters:
Item1 : ItaniumExpr
Item2 : ItaniumExpr

Vendor string

Full Usage: Vendor string

Parameters:
    Item : string

Builtin extended types by vendors.

Item : string

VirtualThunk(ItaniumExpr, ItaniumExpr)

Full Usage: VirtualThunk(ItaniumExpr, ItaniumExpr)

Parameters:

Virtual function override thunks with call offset and base encoding.

Item1 : ItaniumExpr
Item2 : ItaniumExpr

VirtualThunkRet ItaniumExpr

Full Usage: VirtualThunkRet ItaniumExpr

Parameters:

Virtual override thunks with covariant return.

Item : ItaniumExpr