9#ifndef LLDB_EXPRESSION_EXPRESSIONPARSER_H
10#define LLDB_EXPRESSION_EXPRESSIONPARSER_H
40 bool generate_debug_info)
77 unsigned typed_pos) = 0;
124 std::shared_ptr<IRExecutionUnit> &execution_unit_sp,
133 std::shared_ptr<IRExecutionUnit> &execution_unit_sp,
"lldb/Utility/ArgCompletionRequest.h"
"lldb/Target/ExecutionContextScope.h" Inherit from this if your object can reconstruct its execution ...
"lldb/Target/ExecutionContext.h" A class that contains an execution context.
"lldb/Expression/ExpressionParser.h" Encapsulates an instance of a compiler that can parse expression...
Status RunStaticInitializers(lldb::IRExecutionUnitSP &execution_unit_sp, ExecutionContext &exe_ctx)
Run all static initializers for an execution unit.
virtual bool RewriteExpression(DiagnosticManager &diagnostic_manager)
Try to use the FixIts in the diagnostic_manager to rewrite the expression.
ExpressionParser(ExecutionContextScope *exe_scope, Expression &expr, bool generate_debug_info)
Constructor.
virtual Status DoPrepareForExecution(lldb::addr_t &func_addr, lldb::addr_t &func_end, std::shared_ptr< IRExecutionUnit > &execution_unit_sp, ExecutionContext &exe_ctx, bool &can_interpret, lldb_private::ExecutionPolicy execution_policy)=0
bool GetGenerateDebugInfo() const
Expression & m_expr
The expression to be parsed.
Status PrepareForExecution(lldb::addr_t &func_addr, lldb::addr_t &func_end, std::shared_ptr< IRExecutionUnit > &execution_unit_sp, ExecutionContext &exe_ctx, bool &can_interpret, lldb_private::ExecutionPolicy execution_policy)
Ready an already-parsed expression for execution, possibly evaluating it statically.
virtual bool Complete(CompletionRequest &request, unsigned line, unsigned pos, unsigned typed_pos)=0
Attempts to find possible command line completions for the given expression.
virtual ~ExpressionParser()=default
Destructor.
bool m_generate_debug_info
Encapsulates a single expression for use in lldb.
A class that represents a running process on the host machine.
ExecutionPolicy
Expression execution policies.
std::shared_ptr< lldb_private::IRExecutionUnit > IRExecutionUnitSP