LLDB mainline
Public Member Functions | Static Public Attributes | Private Attributes | List of all members
lldb_private::ClangUserExpression::ClangUserExpressionHelper Class Reference

#include <ClangUserExpression.h>

Inheritance diagram for lldb_private::ClangUserExpression::ClangUserExpressionHelper:
Inheritance graph
[legend]

Public Member Functions

 ClangUserExpressionHelper (Target &target, bool top_level)
 
ClangExpressionDeclMapDeclMap () override
 Return the object that the parser should use when resolving external values.
 
void ResetDeclMap ()
 
void ResetDeclMap (ExecutionContext &exe_ctx, Materializer::PersistentVariableDelegate &result_delegate, bool keep_result_in_memory, ValueObject *ctx_obj)
 
clang::ASTConsumer * ASTTransformer (clang::ASTConsumer *passthrough) override
 Return the object that the parser should allow to access ASTs.
 
void CommitPersistentDecls () override
 

Static Public Attributes

static char ID
 

Private Attributes

Targetm_target
 
std::unique_ptr< ClangExpressionDeclMapm_expr_decl_map_up
 
std::unique_ptr< ASTStructExtractorm_struct_extractor_up
 The class that generates the argument struct layout.
 
std::unique_ptr< ASTResultSynthesizerm_result_synthesizer_up
 
bool m_top_level
 

Detailed Description

Definition at line 54 of file ClangUserExpression.h.

Constructor & Destructor Documentation

◆ ClangUserExpressionHelper()

lldb_private::ClangUserExpression::ClangUserExpressionHelper::ClangUserExpressionHelper ( Target target,
bool  top_level 
)
inline

Definition at line 61 of file ClangUserExpression.h.

Member Function Documentation

◆ ASTTransformer()

clang::ASTConsumer * ClangUserExpression::ClangUserExpressionHelper::ASTTransformer ( clang::ASTConsumer *  passthrough)
override

Return the object that the parser should allow to access ASTs.

May be NULL if the ASTs do not need to be transformed.

Parameters
[in]passthroughThe ASTConsumer that the returned transformer should send the ASTs to after transformation.

Definition at line 1001 of file ClangUserExpression.cpp.

References lldb_private::LLVMUserExpression::m_target.

◆ CommitPersistentDecls()

void ClangUserExpression::ClangUserExpressionHelper::CommitPersistentDecls ( )
override

Definition at line 1009 of file ClangUserExpression.cpp.

◆ DeclMap()

ClangExpressionDeclMap * lldb_private::ClangUserExpression::ClangUserExpressionHelper::DeclMap ( )
inlineoverride

Return the object that the parser should use when resolving external values.

May be NULL if everything should be self-contained.

Definition at line 66 of file ClangUserExpression.h.

References m_expr_decl_map_up.

Referenced by lldb_private::ClangUserExpression::DeclMap().

◆ ResetDeclMap() [1/2]

void lldb_private::ClangUserExpression::ClangUserExpressionHelper::ResetDeclMap ( )
inline

Definition at line 70 of file ClangUserExpression.h.

References m_expr_decl_map_up.

Referenced by lldb_private::ClangUserExpression::ResetDeclMap().

◆ ResetDeclMap() [2/2]

void ClangUserExpression::ClangUserExpressionHelper::ResetDeclMap ( ExecutionContext exe_ctx,
Materializer::PersistentVariableDelegate result_delegate,
bool  keep_result_in_memory,
ValueObject ctx_obj 
)

Member Data Documentation

◆ ID

char ClangUserExpression::ClangUserExpressionHelper::ID
static

Definition at line 59 of file ClangUserExpression.h.

◆ m_expr_decl_map_up

std::unique_ptr<ClangExpressionDeclMap> lldb_private::ClangUserExpression::ClangUserExpressionHelper::m_expr_decl_map_up
private

Definition at line 90 of file ClangUserExpression.h.

Referenced by DeclMap(), and ResetDeclMap().

◆ m_result_synthesizer_up

std::unique_ptr<ASTResultSynthesizer> lldb_private::ClangUserExpression::ClangUserExpressionHelper::m_result_synthesizer_up
private

Definition at line 95 of file ClangUserExpression.h.

◆ m_struct_extractor_up

std::unique_ptr<ASTStructExtractor> lldb_private::ClangUserExpression::ClangUserExpressionHelper::m_struct_extractor_up
private

The class that generates the argument struct layout.

Definition at line 91 of file ClangUserExpression.h.

◆ m_target

Target& lldb_private::ClangUserExpression::ClangUserExpressionHelper::m_target
private

Definition at line 89 of file ClangUserExpression.h.

◆ m_top_level

bool lldb_private::ClangUserExpression::ClangUserExpressionHelper::m_top_level
private

Definition at line 96 of file ClangUserExpression.h.


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