class ByteCodeStmtGen
Declaration
template <class Emitter>
class ByteCodeStmtGen { /* full declaration omitted */ };
Description
Compilation context for statements.
Declared at: clang/lib/AST/Interp/ByteCodeStmtGen.h:36
Templates
- Emitter
Member Variables
- private llvm::Optional<PrimType> ReturnType
- Type of the expression returned by the function.
- private clang::interp::ByteCodeStmtGen::CaseMap CaseLabels
- Switch case mapping.
- private clang::interp::ByteCodeStmtGen::OptLabelTy BreakLabel
- Point to break to.
- private clang::interp::ByteCodeStmtGen::OptLabelTy ContinueLabel
- Point to continue to.
- private clang::interp::ByteCodeStmtGen::OptLabelTy DefaultLabel
- Default case label.
Method Overview
- public template <typename... Tys> ByteCodeStmtGen<Emitter>(Tys &&... Args)
- private bool visitCompoundStmt(const clang::CompoundStmt * S)
- private bool visitDeclStmt(const clang::DeclStmt * DS)
- protected bool visitFunc(const clang::FunctionDecl * F)
- private bool visitIfStmt(const clang::IfStmt * IS)
- private bool visitReturnStmt(const clang::ReturnStmt * RS)
- private bool visitStmt(const clang::Stmt * S)
- private bool visitVarDecl(const clang::VarDecl * VD)
Methods
¶template <typename... Tys>
ByteCodeStmtGen<Emitter>(Tys&&... Args)
template <typename... Tys>
ByteCodeStmtGen<Emitter>(Tys&&... Args)
Declared at: clang/lib/AST/Interp/ByteCodeStmtGen.h:44
Templates
- Tys
Parameters
- Tys&&... Args
¶bool visitCompoundStmt(
const clang::CompoundStmt* S)
bool visitCompoundStmt(
const clang::CompoundStmt* S)
Declared at: clang/lib/AST/Interp/ByteCodeStmtGen.h:57
Parameters
- const clang::CompoundStmt* S
¶bool visitDeclStmt(const clang::DeclStmt* DS)
bool visitDeclStmt(const clang::DeclStmt* DS)
Declared at: clang/lib/AST/Interp/ByteCodeStmtGen.h:58
Parameters
- const clang::DeclStmt* DS
¶bool visitFunc(const clang::FunctionDecl* F)
bool visitFunc(const clang::FunctionDecl* F)
Declared at: clang/lib/AST/Interp/ByteCodeStmtGen.h:48
Parameters
- const clang::FunctionDecl* F
¶bool visitIfStmt(const clang::IfStmt* IS)
bool visitIfStmt(const clang::IfStmt* IS)
Declared at: clang/lib/AST/Interp/ByteCodeStmtGen.h:60
Parameters
- const clang::IfStmt* IS
¶bool visitReturnStmt(const clang::ReturnStmt* RS)
bool visitReturnStmt(const clang::ReturnStmt* RS)
Declared at: clang/lib/AST/Interp/ByteCodeStmtGen.h:59
Parameters
- const clang::ReturnStmt* RS
¶bool visitStmt(const clang::Stmt* S)
bool visitStmt(const clang::Stmt* S)
Declared at: clang/lib/AST/Interp/ByteCodeStmtGen.h:56
Parameters
- const clang::Stmt* S
¶bool visitVarDecl(const clang::VarDecl* VD)
bool visitVarDecl(const clang::VarDecl* VD)
Description
Compiles a variable declaration.
Declared at: clang/lib/AST/Interp/ByteCodeStmtGen.h:63
Parameters
- const clang::VarDecl* VD