clang  20.0.0git
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
clang::interp::InitLink Struct Reference

#include "/home/runner/work/llvm/llvm/repo/clang/lib/AST/ByteCode/Compiler.h"

Public Types

enum  {
  K_This = 0 , K_Field = 1 , K_Temp = 2 , K_Decl = 3 ,
  K_Elem = 5
}
 

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 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 

Definition at line 48 of file Compiler.h.

Constructor & Destructor Documentation

◆ InitLink()

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

Definition at line 78 of file Compiler.h.

Member Function Documentation

◆ Decl()

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

◆ Elem()

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

Definition at line 72 of file Compiler.h.

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

◆ emit()

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

Definition at line 77 of file Compiler.cpp.

References D, E, Kind, Offset, and clang::interp::Compiler< Emitter >::visitDeclRef().

◆ Field()

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

Definition at line 57 of file Compiler.h.

References K_Field, and Offset.

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

◆ Temp()

static InitLink clang::interp::InitLink::Temp ( unsigned  Offset)
inlinestatic

Definition at line 62 of file Compiler.h.

References K_Temp, and Offset.

◆ This()

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

Definition at line 56 of file Compiler.h.

References K_This.

Member Data Documentation

◆ 

union { ... }

◆ D

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

Definition at line 85 of file Compiler.h.

Referenced by Decl().

◆ Kind

uint32_t clang::interp::InitLink::Kind

Definition at line 82 of file Compiler.h.

◆ Offset

unsigned clang::interp::InitLink::Offset

Definition at line 84 of file Compiler.h.

Referenced by Field(), and Temp().


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