clang 17.0.0git
|
Go to the source code of this file.
Namespaces | |
namespace | clang |
namespace | clang::interp |
Macros | |
#define | TYPE_SWITCH_CASE(Name, B) case Name: { using T = PrimConv<Name>::T; B; break; } |
Helper macro to simplify type switches. | |
#define | TYPE_SWITCH(Expr, B) |
#define | COMPOSITE_TYPE_SWITCH(Expr, B, D) |
Enumerations | |
enum | clang::interp::PrimType : unsigned { clang::interp::PT_Sint8 , clang::interp::PT_Uint8 , clang::interp::PT_Sint16 , clang::interp::PT_Uint16 , clang::interp::PT_Sint32 , clang::interp::PT_Uint32 , clang::interp::PT_Sint64 , clang::interp::PT_Uint64 , clang::interp::PT_Bool , clang::interp::PT_Float , clang::interp::PT_Ptr } |
Enumeration of the primitive types of the VM. More... | |
Functions | |
size_t | clang::interp::primSize (PrimType Type) |
Returns the size of a primitive type in bytes. | |
constexpr size_t | clang::interp::align (size_t Size) |
Aligns a size to the pointer alignment. | |
constexpr bool | clang::interp::aligned (uintptr_t Value) |
static bool | clang::interp::aligned (const void *P) |
#define COMPOSITE_TYPE_SWITCH | ( | Expr, | |
B, | |||
D | |||
) |
Definition at line 95 of file PrimType.h.
#define TYPE_SWITCH | ( | Expr, | |
B | |||
) |
Definition at line 79 of file PrimType.h.
#define TYPE_SWITCH_CASE | ( | Name, | |
B | |||
) | case Name: { using T = PrimConv<Name>::T; B; break; } |
Helper macro to simplify type switches.
The macro implicitly exposes a type T in the scope of the inner block.
Definition at line 77 of file PrimType.h.