clang API Documentation
#include <CodeGenFunction.h>
Public Member Functions | |
OpaqueValueMappingData () | |
bool | isValid () const |
void | clear () |
void | unbind (CodeGenFunction &CGF) |
Static Public Member Functions | |
static bool | shouldBindAsLValue (const Expr *expr) |
static OpaqueValueMappingData | bind (CodeGenFunction &CGF, const OpaqueValueExpr *ov, const Expr *e) |
static OpaqueValueMappingData | bind (CodeGenFunction &CGF, const OpaqueValueExpr *ov, const LValue &lv) |
static OpaqueValueMappingData | bind (CodeGenFunction &CGF, const OpaqueValueExpr *ov, const RValue &rv) |
A non-RAII class containing all the information about a bound opaque value. OpaqueValueMapping, below, is a RAII wrapper for this which makes individual mappings very simple; using this class directly is useful when you have a variable number of opaque values or don't want the RAII functionality for some reason.
Definition at line 777 of file CodeGenFunction.h.
clang::CodeGen::CodeGenFunction::OpaqueValueMappingData::OpaqueValueMappingData | ( | ) | [inline] |
Definition at line 786 of file CodeGenFunction.h.
Referenced by bind().
static OpaqueValueMappingData clang::CodeGen::CodeGenFunction::OpaqueValueMappingData::bind | ( | CodeGenFunction & | CGF, |
const OpaqueValueExpr * | ov, | ||
const Expr * | e | ||
) | [inline, static] |
Definition at line 799 of file CodeGenFunction.h.
References clang::CodeGen::CodeGenFunction::EmitAnyExpr(), clang::CodeGen::CodeGenFunction::EmitLValue(), and shouldBindAsLValue().
Referenced by clang::CodeGen::CodeGenFunction::OpaqueValueMapping::OpaqueValueMapping().
static OpaqueValueMappingData clang::CodeGen::CodeGenFunction::OpaqueValueMappingData::bind | ( | CodeGenFunction & | CGF, |
const OpaqueValueExpr * | ov, | ||
const LValue & | lv | ||
) | [inline, static] |
Definition at line 807 of file CodeGenFunction.h.
References OpaqueValueMappingData(), and shouldBindAsLValue().
static OpaqueValueMappingData clang::CodeGen::CodeGenFunction::OpaqueValueMappingData::bind | ( | CodeGenFunction & | CGF, |
const OpaqueValueExpr * | ov, | ||
const RValue & | rv | ||
) | [inline, static] |
Definition at line 815 of file CodeGenFunction.h.
References data(), clang::CodeGen::CodeGenFunction::protectFromPeepholes(), and shouldBindAsLValue().
void clang::CodeGen::CodeGenFunction::OpaqueValueMappingData::clear | ( | ) | [inline] |
Definition at line 832 of file CodeGenFunction.h.
Referenced by clang::CodeGen::CodeGenFunction::OpaqueValueMapping::pop().
bool clang::CodeGen::CodeGenFunction::OpaqueValueMappingData::isValid | ( | ) | const [inline] |
Definition at line 831 of file CodeGenFunction.h.
Referenced by clang::CodeGen::CodeGenFunction::OpaqueValueMapping::~OpaqueValueMapping().
static bool clang::CodeGen::CodeGenFunction::OpaqueValueMappingData::shouldBindAsLValue | ( | const Expr * | expr | ) | [inline, static] |
Definition at line 788 of file CodeGenFunction.h.
References clang::Expr::getType(), clang::CodeGen::CodeGenFunction::hasAggregateEvaluationKind(), clang::Type::isFunctionType(), and clang::Expr::isGLValue().
Referenced by bind(), and clang::CodeGen::CodeGenFunction::EmitOpaqueValueLValue().
void clang::CodeGen::CodeGenFunction::OpaqueValueMappingData::unbind | ( | CodeGenFunction & | CGF | ) | [inline] |
Definition at line 834 of file CodeGenFunction.h.
References clang::CodeGen::CodeGenFunction::unprotectFromPeepholes().
Referenced by clang::CodeGen::CodeGenFunction::OpaqueValueMapping::pop(), and clang::CodeGen::CodeGenFunction::OpaqueValueMapping::~OpaqueValueMapping().