9#ifndef LLDB_SOURCE_PLUGINS_EXPRESSIONPARSER_CLANG_CLANGFUNCTIONCALLER_H
10#define LLDB_SOURCE_PLUGINS_EXPRESSIONPARSER_CLANG_CLANGFUNCTIONCALLER_H
23class ASTStructExtractor;
61 :
public llvm::RTTIExtends<ClangFunctionCallerHelper,
62 ClangExpressionHelper> {
94 bool isA(
const void *ClassID)
const override {
117 const Address &function_address,
118 const ValueList &arg_value_list,
const char *name);
A section + offset based address class.
"lldb/Expression/ClangExpressionDeclMap.h" Manages named entities that are defined in LLDB's debug in...
ClangExpressionDeclMap * DeclMap() override
Return the object that the parser should use when resolving external values.
clang::ASTConsumer * ASTTransformer(clang::ASTConsumer *passthrough) override
Return the object that the parser should allow to access ASTs.
ClangFunctionCaller & m_owner
std::unique_ptr< ASTStructExtractor > m_struct_extractor
The class that generates the argument struct layout.
ClangFunctionCallerHelper(ClangFunctionCaller &owner)
"lldb/Expression/ClangFunctionCaller.h" Encapsulates a function that can be called.
const char * GetWrapperStructName()
static bool classof(const Expression *obj)
bool isA(const void *ClassID) const override
~ClangFunctionCaller() override
ClangFunctionCallerHelper m_type_system_helper
unsigned CompileFunction(lldb::ThreadSP thread_to_use_sp, DiagnosticManager &diagnostic_manager) override
Compile the wrapper function.
ExpressionTypeSystemHelper * GetTypeSystemHelper() override
Generic representation of a type in a programming language.
"lldb/Target/ExecutionContextScope.h" Inherit from this if your object can reconstruct its execution ...
"lldb/Expression/ExpressionTypeSystemHelper.h" A helper object that the Expression can pass to its Ex...
Encapsulates a single expression for use in lldb.
virtual bool isA(const void *ClassID) const =0
Encapsulates a function that can be called.
std::string m_wrapper_struct_name
The name of the struct that contains the target function address, arguments, and result.
bool isA(const void *ClassID) const override
A class that represents a running process on the host machine.
std::shared_ptr< lldb_private::Thread > ThreadSP