clang 22.0.0git
clang::SubobjectAdjustment Struct Reference

An adjustment to be made to the temporary created when emitting a reference binding, which accesses a particular subobject of that temporary. More...

#include "clang/AST/Expr.h"

Classes

struct  DTB
struct  P

Public Types

enum  { DerivedToBaseAdjustment , FieldAdjustment , MemberPointerAdjustment }

Public Member Functions

 SubobjectAdjustment (const CastExpr *BasePath, const CXXRecordDecl *DerivedClass)
 SubobjectAdjustment (const FieldDecl *Field)
 SubobjectAdjustment (const MemberPointerType *MPT, Expr *RHS)

Public Attributes

enum clang::SubobjectAdjustment:: { ... }  Kind
union { 
   struct DTB   DerivedToBase 
   const FieldDecl *   Field 
   struct P   Ptr 
}; 

Detailed Description

An adjustment to be made to the temporary created when emitting a reference binding, which accesses a particular subobject of that temporary.

Definition at line 68 of file Expr.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
DerivedToBaseAdjustment 
FieldAdjustment 
MemberPointerAdjustment 

Definition at line 69 of file Expr.h.

Constructor & Destructor Documentation

◆ SubobjectAdjustment() [1/3]

clang::SubobjectAdjustment::SubobjectAdjustment ( const CastExpr * BasePath,
const CXXRecordDecl * DerivedClass )
inline

Definition at line 91 of file Expr.h.

References DerivedToBase, DerivedToBaseAdjustment, and Kind.

◆ SubobjectAdjustment() [2/3]

clang::SubobjectAdjustment::SubobjectAdjustment ( const FieldDecl * Field)
inline

Definition at line 98 of file Expr.h.

References Field, FieldAdjustment, and Kind.

◆ SubobjectAdjustment() [3/3]

clang::SubobjectAdjustment::SubobjectAdjustment ( const MemberPointerType * MPT,
Expr * RHS )
inline

Definition at line 102 of file Expr.h.

References Kind, MemberPointerAdjustment, and Ptr.

Member Data Documentation

◆ [union]

◆ DerivedToBase

struct DTB clang::SubobjectAdjustment::DerivedToBase

Definition at line 86 of file Expr.h.

Referenced by SubobjectAdjustment().

◆ Field

const FieldDecl* clang::SubobjectAdjustment::Field

Definition at line 87 of file Expr.h.

Referenced by SubobjectAdjustment().

◆ []

enum { ... } clang::SubobjectAdjustment::Kind

◆ Ptr

struct P clang::SubobjectAdjustment::Ptr

Definition at line 88 of file Expr.h.

Referenced by SubobjectAdjustment().


The documentation for this struct was generated from the following file: