clang  6.0.0svn
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
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"

Collaboration diagram for clang::SubobjectAdjustment:
Collaboration graph
[legend]

Classes

struct  DTB
 
struct  P
 

Public Types

enum  { DerivedToBaseAdjustment, FieldAdjustment, MemberPointerAdjustment }
 

Public Member Functions

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

Public Attributes

enum clang::SubobjectAdjustment:: { ... }  Kind
 
union {
   struct DTB   DerivedToBase
 
   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 60 of file Expr.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
DerivedToBaseAdjustment 
FieldAdjustment 
MemberPointerAdjustment 

Definition at line 61 of file Expr.h.

Constructor & Destructor Documentation

◆ SubobjectAdjustment() [1/3]

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

◆ SubobjectAdjustment() [2/3]

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

Definition at line 90 of file Expr.h.

References Field.

◆ SubobjectAdjustment() [3/3]

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

Member Data Documentation

◆ @38

union { ... }

◆ DerivedToBase

struct DTB clang::SubobjectAdjustment::DerivedToBase

Definition at line 78 of file Expr.h.

Referenced by SubobjectAdjustment().

◆ Field

FieldDecl* clang::SubobjectAdjustment::Field

◆ Kind

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

◆ Ptr

struct P clang::SubobjectAdjustment::Ptr

Definition at line 80 of file Expr.h.


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