clang 22.0.0git
clang::interp::InitLink Struct Reference

#include "/home/buildbot/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/AST/ByteCode/Compiler.h"

Public Types

enum  {
  K_This = 0 , K_Field = 1 , K_Temp = 2 , K_Decl = 3 ,
  K_Elem = 5 , K_RVO = 6 , K_InitList = 7
}

Public Member Functions

 InitLink (uint8_t Kind)
template<class Emitter>
bool emit (Compiler< Emitter > *Ctx, const Expr *E) const

Static Public Member Functions

static InitLink This ()
static InitLink InitList ()
static InitLink RVO ()
static InitLink Field (unsigned Offset)
static InitLink Temp (unsigned Offset)
static InitLink Decl (const ValueDecl *D)
static InitLink Elem (unsigned Index)

Public Attributes

uint32_t Kind
union { 
   unsigned   Offset 
   const ValueDecl *   D 
}; 

Detailed Description

Definition at line 46 of file Compiler.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
K_This 
K_Field 
K_Temp 
K_Decl 
K_Elem 
K_RVO 
K_InitList 

Definition at line 48 of file Compiler.h.

Constructor & Destructor Documentation

◆ InitLink()

clang::interp::InitLink::InitLink ( uint8_t Kind)
inline

Definition at line 82 of file Compiler.h.

References Kind.

Referenced by Decl(), Elem(), Field(), InitList(), RVO(), Temp(), and This().

Member Function Documentation

◆ Decl()

InitLink clang::interp::InitLink::Decl ( const ValueDecl * D)
inlinestatic

◆ Elem()

InitLink clang::interp::InitLink::Elem ( unsigned Index)
inlinestatic

Definition at line 76 of file Compiler.h.

References InitLink(), K_Elem, and Offset.

Referenced by clang::interp::Compiler< Emitter >::visitArrayElemInit().

◆ emit()

template<class Emitter>
bool clang::interp::InitLink::emit ( Compiler< Emitter > * Ctx,
const Expr * E ) const

◆ Field()

InitLink clang::interp::InitLink::Field ( unsigned Offset)
inlinestatic

Definition at line 61 of file Compiler.h.

References InitLink(), K_Field, and Offset.

Referenced by clang::interp::Compiler< Emitter >::visitInitList().

◆ InitList()

InitLink clang::interp::InitLink::InitList ( )
inlinestatic

Definition at line 59 of file Compiler.h.

References InitLink(), and K_InitList.

Referenced by clang::interp::Compiler< Emitter >::visitInitList().

◆ RVO()

InitLink clang::interp::InitLink::RVO ( )
inlinestatic

Definition at line 60 of file Compiler.h.

References InitLink(), and K_RVO.

Referenced by clang::interp::Compiler< Emitter >::visitReturnStmt().

◆ Temp()

◆ This()

InitLink clang::interp::InitLink::This ( )
inlinestatic

Definition at line 58 of file Compiler.h.

References InitLink(), and K_This.

Member Data Documentation

◆ [union]

union { ... } clang::interp::InitLink

◆ D

const ValueDecl* clang::interp::InitLink::D

Definition at line 89 of file Compiler.h.

Referenced by Decl(), and emit().

◆ Kind

uint32_t clang::interp::InitLink::Kind

Definition at line 86 of file Compiler.h.

Referenced by emit(), and InitLink().

◆ Offset

unsigned clang::interp::InitLink::Offset

Definition at line 88 of file Compiler.h.

Referenced by Elem(), emit(), Field(), and Temp().


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