diff options
Diffstat (limited to 'include/lldb/Expression/ClangUserExpression.h')
-rw-r--r-- | include/lldb/Expression/ClangUserExpression.h | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/include/lldb/Expression/ClangUserExpression.h b/include/lldb/Expression/ClangUserExpression.h index 83fdf1c21955..9d2e9093c0bd 100644 --- a/include/lldb/Expression/ClangUserExpression.h +++ b/include/lldb/Expression/ClangUserExpression.h @@ -105,7 +105,8 @@ public: Parse (Stream &error_stream, ExecutionContext &exe_ctx, lldb_private::ExecutionPolicy execution_policy, - bool keep_result_in_memory); + bool keep_result_in_memory, + bool generate_debug_info); bool CanInterpret () @@ -143,7 +144,7 @@ public: /// @return /// A Process::Execution results value. //------------------------------------------------------------------ - ExecutionResults + lldb::ExpressionResults Execute (Stream &error_stream, ExecutionContext &exe_ctx, const EvaluateExpressionOptions& options, @@ -166,7 +167,7 @@ public: /// /// @param[in] function_stack_pointer /// A pointer to the base of the function's stack frame. This - /// is used to determine whether the expession result resides in + /// is used to determine whether the expression result resides in /// memory that will still be valid, or whether it needs to be /// treated as homeless for the purpose of future expressions. /// @@ -295,9 +296,9 @@ public: /// fails to parse, run, or evaluated. /// /// @result - /// A Process::ExecutionResults value. eExecutionCompleted for success. + /// A Process::ExpressionResults value. eExpressionCompleted for success. //------------------------------------------------------------------ - static ExecutionResults + static lldb::ExpressionResults Evaluate (ExecutionContext &exe_ctx, const EvaluateExpressionOptions& options, const char *expr_cstr, @@ -308,7 +309,7 @@ public: static const Error::ValueType kNoResult = 0x1001; ///< ValueObject::GetError() returns this if there is no result from the expression. private: //------------------------------------------------------------------ - /// Populate m_cplusplus and m_objetivec based on the environment. + /// Populate m_cplusplus and m_objectivec based on the environment. //------------------------------------------------------------------ void @@ -344,11 +345,11 @@ private: std::string m_transformed_text; ///< The text of the expression, as send to the parser ResultType m_desired_type; ///< The type to coerce the expression's result to. If eResultTypeAny, inferred from the expression. - std::unique_ptr<ClangExpressionDeclMap> m_expr_decl_map; ///< The map to use when parsing the expression. - std::unique_ptr<IRExecutionUnit> m_execution_unit_ap; ///< The execution unit the expression is stored in. - std::unique_ptr<Materializer> m_materializer_ap; ///< The materializer to use when running the expression. - std::unique_ptr<ASTResultSynthesizer> m_result_synthesizer; ///< The result synthesizer, if one is needed. - + std::unique_ptr<ClangExpressionDeclMap> m_expr_decl_map; ///< The map to use when parsing the expression. + std::shared_ptr<IRExecutionUnit> m_execution_unit_sp; ///< The execution unit the expression is stored in. + std::unique_ptr<Materializer> m_materializer_ap; ///< The materializer to use when running the expression. + std::unique_ptr<ASTResultSynthesizer> m_result_synthesizer; ///< The result synthesizer, if one is needed. + lldb::ModuleWP m_jit_module_wp; bool m_enforce_valid_object; ///< True if the expression parser should enforce the presence of a valid class pointer in order to generate the expression as a method. bool m_cplusplus; ///< True if the expression is compiled as a C++ member function (true if it was parsed when exe_ctx was in a C++ method). bool m_objectivec; ///< True if the expression is compiled as an Objective-C method (true if it was parsed when exe_ctx was in an Objective-C method). |