clang 24.0.0git
clang::interp::PointerPathEntry Struct Reference

#include "/work/as-worker-4/publish-doxygen-docs/llvm-project/clang/lib/AST/ByteCode/Pointer.h"

Public Types

enum  { Base , Field , Array , NegativeArray }

Static Public Member Functions

static PointerPathEntry base (const CXXRecordDecl *RD, bool Virtual=false)
static PointerPathEntry array (int64_t Index)
static PointerPathEntry negativeArray (int64_t Index)
static PointerPathEntry field (const FieldDecl *FD)

Public Attributes

enum clang::interp::PointerPathEntry:: { ... }  Kind
union { 
   uint64_t   Index 
   const FieldDecl *   FD 
   llvm::PointerIntPair< const CXXRecordDecl *, 1, bool >   RD = {} 
}; 

Detailed Description

Definition at line 395 of file Pointer.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Base 
Field 
Array 
NegativeArray 

Definition at line 396 of file Pointer.h.

Member Function Documentation

◆ array()

PointerPathEntry clang::interp::PointerPathEntry::array ( int64_t Index)
inlinestatic

Definition at line 410 of file Pointer.h.

References Array, Index, and Kind.

Referenced by clang::interp::arrayElemPtrOpaque().

◆ base()

PointerPathEntry clang::interp::PointerPathEntry::base ( const CXXRecordDecl * RD,
bool Virtual = false )
inlinestatic

Definition at line 403 of file Pointer.h.

References Base, Kind, RD, and clang::Virtual.

Referenced by clang::interp::getBase().

◆ field()

PointerPathEntry clang::interp::PointerPathEntry::field ( const FieldDecl * FD)
inlinestatic

Definition at line 424 of file Pointer.h.

References FD, Field, and Kind.

Referenced by clang::interp::getField().

◆ negativeArray()

PointerPathEntry clang::interp::PointerPathEntry::negativeArray ( int64_t Index)
inlinestatic

Definition at line 417 of file Pointer.h.

References Index, Kind, and NegativeArray.

Referenced by clang::interp::arrayElemPtrOpaque().

Member Data Documentation

◆ [union]

◆ FD

const FieldDecl* clang::interp::PointerPathEntry::FD

Definition at line 399 of file Pointer.h.

Referenced by field(), and isUserWritingOffTheEnd().

◆ Index

uint64_t clang::interp::PointerPathEntry::Index

◆ []

enum { ... } clang::interp::PointerPathEntry::Kind

◆ RD

llvm::PointerIntPair<const CXXRecordDecl *, 1, bool> clang::interp::PointerPathEntry::RD = {}

Definition at line 400 of file Pointer.h.

Referenced by base().


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