clang  6.0.0svn
Public Member Functions | Static Public Member Functions | List of all members
clang::CodeGen::CodeGenFunction::OpaqueValueMapping Class Reference

An RAII object to set (and then clear) a mapping for an OpaqueValueExpr. More...

#include "/opt/doxygen-docs/src/llvm/tools/clang/lib/CodeGen/CodeGenFunction.h"

Public Member Functions

 OpaqueValueMapping (CodeGenFunction &CGF, const AbstractConditionalOperator *op)
 Build the opaque value mapping for the given conditional operator if it's the GNU ?: extension. More...
 
 OpaqueValueMapping (CodeGenFunction &CGF, const OpaqueValueExpr *OV)
 Build the opaque value mapping for an OpaqueValueExpr whose source expression is set to the expression the OVE represents. More...
 
 OpaqueValueMapping (CodeGenFunction &CGF, const OpaqueValueExpr *opaqueValue, LValue lvalue)
 
 OpaqueValueMapping (CodeGenFunction &CGF, const OpaqueValueExpr *opaqueValue, RValue rvalue)
 
void pop ()
 
 ~OpaqueValueMapping ()
 

Static Public Member Functions

static bool shouldBindAsLValue (const Expr *expr)
 

Detailed Description

An RAII object to set (and then clear) a mapping for an OpaqueValueExpr.

Definition at line 995 of file CodeGenFunction.h.

Constructor & Destructor Documentation

◆ OpaqueValueMapping() [1/4]

clang::CodeGen::CodeGenFunction::OpaqueValueMapping::OpaqueValueMapping ( CodeGenFunction CGF,
const AbstractConditionalOperator op 
)
inline

Build the opaque value mapping for the given conditional operator if it's the GNU ?: extension.

This is a common enough pattern that the convenience operator is really helpful.

Definition at line 1009 of file CodeGenFunction.h.

References clang::BinaryConditionalOperator::getCommon(), and clang::BinaryConditionalOperator::getOpaqueValue().

◆ OpaqueValueMapping() [2/4]

clang::CodeGen::CodeGenFunction::OpaqueValueMapping::OpaqueValueMapping ( CodeGenFunction CGF,
const OpaqueValueExpr OV 
)
inline

Build the opaque value mapping for an OpaqueValueExpr whose source expression is set to the expression the OVE represents.

Definition at line 1022 of file CodeGenFunction.h.

References clang::OpaqueValueExpr::getSourceExpr().

◆ OpaqueValueMapping() [3/4]

clang::CodeGen::CodeGenFunction::OpaqueValueMapping::OpaqueValueMapping ( CodeGenFunction CGF,
const OpaqueValueExpr opaqueValue,
LValue  lvalue 
)
inline

Definition at line 1031 of file CodeGenFunction.h.

◆ OpaqueValueMapping() [4/4]

clang::CodeGen::CodeGenFunction::OpaqueValueMapping::OpaqueValueMapping ( CodeGenFunction CGF,
const OpaqueValueExpr opaqueValue,
RValue  rvalue 
)
inline

Definition at line 1037 of file CodeGenFunction.h.

◆ ~OpaqueValueMapping()

clang::CodeGen::CodeGenFunction::OpaqueValueMapping::~OpaqueValueMapping ( )
inline

Member Function Documentation

◆ pop()

void clang::CodeGen::CodeGenFunction::OpaqueValueMapping::pop ( )
inline

◆ shouldBindAsLValue()

static bool clang::CodeGen::CodeGenFunction::OpaqueValueMapping::shouldBindAsLValue ( const Expr expr)
inlinestatic

Definition at line 1000 of file CodeGenFunction.h.


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