LLDB mainline
Classes | Functions
lldb_private::FormatEntity Namespace Reference

Classes

struct  Entry
 

Functions

bool Format (const Entry &entry, Stream &s, const SymbolContext *sc, const ExecutionContext *exe_ctx, const Address *addr, ValueObject *valobj, bool function_changed, bool initial_function)
 
bool FormatStringRef (const llvm::StringRef &format, Stream &s, const SymbolContext *sc, const ExecutionContext *exe_ctx, const Address *addr, ValueObject *valobj, bool function_changed, bool initial_function)
 
bool FormatCString (const char *format, Stream &s, const SymbolContext *sc, const ExecutionContext *exe_ctx, const Address *addr, ValueObject *valobj, bool function_changed, bool initial_function)
 
Status Parse (const llvm::StringRef &format, Entry &entry)
 
Status ExtractVariableInfo (llvm::StringRef &format_str, llvm::StringRef &variable_name, llvm::StringRef &variable_format)
 
void AutoComplete (lldb_private::CompletionRequest &request)
 
bool FormatFileSpec (const FileSpec &file, Stream &s, llvm::StringRef elements, llvm::StringRef element_format)
 
void PrettyPrintFunctionArguments (Stream &out_stream, VariableList const &args, ExecutionContextScope *exe_scope)
 For each variable in 'args' this function writes the variable name and it's pretty-printed value representation to 'out_stream' in following format:
 

Function Documentation

◆ AutoComplete()

void lldb_private::FormatEntity::AutoComplete ( lldb_private::CompletionRequest request)

◆ ExtractVariableInfo()

Status lldb_private::FormatEntity::ExtractVariableInfo ( llvm::StringRef &  format_str,
llvm::StringRef &  variable_name,
llvm::StringRef &  variable_format 
)

Definition at line 2269 of file FormatEntity.cpp.

References error().

Referenced by ParseInternal().

◆ Format()

bool lldb_private::FormatEntity::Format ( const Entry entry,
Stream s,
const SymbolContext sc,
const ExecutionContext exe_ctx,
const Address addr,
ValueObject valobj,
bool  function_changed,
bool  initial_function 
)

Definition at line 1143 of file FormatEntity.cpp.

References lldb_private::FormatEntity::Entry::AddressFile, lldb_private::FormatEntity::Entry::AddressLoad, lldb_private::FormatEntity::Entry::AddressLoadOrFile, lldb_private::VariableList::AppendVariablesWithScope(), lldb_private::ConstString::AsCString(), lldb_private::SymbolContext::block, lldb_private::FormatEntity::Entry::children, lldb_private::LineEntry::column, lldb_private::SymbolContext::comp_unit, lldb_private::FormatEntity::Entry::CurrentPCArrow, DumpAddressAndContent(), DumpAddressOffsetFromFunction(), DumpFile(), DumpRegister(), DumpValue(), lldb_private::Language::eName, lldb_private::Language::eNameWithArgs, lldb_private::Language::eNameWithNoArgs, lldb_private::Mangled::ePreferMangled, lldb::eRegisterKindGeneric, lldb_private::FormatEntity::Entry::EscapeCode, lldb::eStructuredDataTypeDictionary, lldb::eValueTypeVariableArgument, lldb_private::FormatEntity::Entry::File, lldb_private::Language::FindPlugin(), FormatInlinedBlock(), FormatThreadExtendedInfoRecurse(), lldb_private::FormatEntity::Entry::FrameIndex, lldb_private::FormatEntity::Entry::FrameIsArtificial, lldb_private::FormatEntity::Entry::FrameNoDebug, lldb_private::FormatEntity::Entry::FrameRegisterByName, lldb_private::FormatEntity::Entry::FrameRegisterFlags, lldb_private::FormatEntity::Entry::FrameRegisterFP, lldb_private::FormatEntity::Entry::FrameRegisterPC, lldb_private::FormatEntity::Entry::FrameRegisterSP, lldb_private::SymbolContext::function, lldb_private::FormatEntity::Entry::FunctionAddrOffset, lldb_private::FormatEntity::Entry::FunctionAddrOffsetConcrete, lldb_private::FormatEntity::Entry::FunctionChanged, lldb_private::FormatEntity::Entry::FunctionDidChange, lldb_private::FormatEntity::Entry::FunctionID, lldb_private::FormatEntity::Entry::FunctionInitial, lldb_private::FormatEntity::Entry::FunctionInitialFunction, lldb_private::FormatEntity::Entry::FunctionIsOptimized, lldb_private::FormatEntity::Entry::FunctionLineOffset, lldb_private::FormatEntity::Entry::FunctionMangledName, lldb_private::FormatEntity::Entry::FunctionName, lldb_private::FormatEntity::Entry::FunctionNameNoArgs, lldb_private::FormatEntity::Entry::FunctionNameWithArgs, lldb_private::FormatEntity::Entry::FunctionPCOffset, lldb_private::Target::GetArchitecture(), lldb_private::ArchSpec::GetArchitectureName(), lldb_private::AddressRange::GetBaseAddress(), lldb_private::ExecutionContext::GetBestExecutionContextScope(), lldb_private::Function::GetBlock(), lldb_private::Block::GetBlockVariableList(), lldb_private::AddressRange::GetByteSize(), lldb_private::Block::GetContainingInlinedBlock(), lldb_private::ConstString::GetCString(), lldb_private::Target::GetExecutableModulePointer(), lldb_private::StopInfo::GetExpressionVariable(), lldb_private::Thread::GetExtendedInfo(), lldb_private::LineEntry::GetFile(), lldb_private::Module::GetFileSpec(), lldb_private::StackFrame::GetFrameCodeAddress(), lldb_private::StackFrame::GetFrameIndex(), lldb_private::ExecutionContext::GetFramePtr(), lldb_private::Language::GetFunctionDisplayName(), lldb_private::Symbol::GetID(), lldb_private::Process::GetID(), lldb_private::UserID::GetID(), lldb_private::Thread::GetIndexID(), lldb_private::Block::GetInlinedFunctionInfo(), lldb_private::Function::GetIsOptimized(), lldb_private::CompileUnit::GetLanguage(), lldb_private::Function::GetLanguage(), lldb_private::Symbol::GetLanguage(), lldb_private::Symbol::GetMangled(), lldb_private::Function::GetMangled(), lldb_private::Thread::GetName(), lldb_private::InlineFunctionInfo::GetName(), lldb_private::Function::GetName(), lldb_private::Symbol::GetName(), lldb_private::Mangled::GetName(), lldb_private::Language::GetNameForLanguageType(), lldb_private::Function::GetNameNoArguments(), lldb_private::Symbol::GetNameNoArguments(), lldb_private::CompileUnit::GetPrimaryFile(), lldb_private::Thread::GetProcess(), lldb_private::ExecutionContext::GetProcessPtr(), lldb_private::Thread::GetProtocolID(), lldb_private::Thread::GetQueueName(), lldb_private::StackFrame::GetRegisterContextSP(), lldb_private::StopInfo::GetReturnValueObject(), lldb_private::VariableList::GetSize(), lldb_private::Thread::GetStopInfo(), lldb_private::StreamString::GetString(), lldb_private::Process::GetTarget(), lldb_private::ExecutionContext::GetTargetPtr(), lldb_private::ExecutionContext::GetThreadPtr(), lldb_private::ArchSpec::GetTriple(), lldb_private::Debugger::GetUseColor(), lldb_private::StackFrame::HasDebugInformation(), lldb_private::FormatEntity::Entry::Invalid, lldb_private::Address::IsValid(), lldb_private::LineEntry::IsValid(), lldb_private::ArchSpec::IsValid(), lldb_private::FormatEntity::Entry::Lang, lldb_private::LineEntry::line, lldb_private::SymbolContext::line_entry, lldb_private::FormatEntity::Entry::LineEntryColumn, lldb_private::FormatEntity::Entry::LineEntryEndAddress, lldb_private::FormatEntity::Entry::LineEntryFile, lldb_private::FormatEntity::Entry::LineEntryLineNumber, lldb_private::FormatEntity::Entry::LineEntryStartAddress, LLDB_INVALID_ADDRESS, LLDB_REGNUM_GENERIC_FLAGS, LLDB_REGNUM_GENERIC_FP, LLDB_REGNUM_GENERIC_SP, lldb_private::SymbolContext::module_sp, lldb_private::FormatEntity::Entry::ModuleFile, lldb_private::FormatEntity::Entry::number, lldb_private::FormatEntity::Entry::ParentNumber, lldb_private::FormatEntity::Entry::ParentString, pc, PrettyPrintFunctionNameWithArgs(), lldb_private::Stream::Printf(), lldb_private::FormatEntity::Entry::printf_format, lldb_private::FormatEntity::Entry::ProcessFile, lldb_private::FormatEntity::Entry::ProcessID, lldb_private::Stream::PutCString(), lldb_private::LineEntry::range, lldb_private::FormatEntity::Entry::Root, RunScriptFormatKeyword(), lldb_private::FormatEntity::Entry::Scope, lldb_private::FormatEntity::Entry::ScriptFrame, lldb_private::FormatEntity::Entry::ScriptProcess, lldb_private::FormatEntity::Entry::ScriptTarget, lldb_private::FormatEntity::Entry::ScriptThread, lldb_private::FormatEntity::Entry::ScriptVariable, lldb_private::FormatEntity::Entry::ScriptVariableSynthetic, lldb_private::Address::Slide(), lldb_private::FormatEntity::Entry::String, lldb_private::FormatEntity::Entry::string, lldb_private::SymbolContext::symbol, lldb_private::FormatEntity::Entry::TargetArch, lldb_private::FormatEntity::Entry::ThreadCompletedExpression, lldb_private::FormatEntity::Entry::ThreadID, lldb_private::FormatEntity::Entry::ThreadIndexID, lldb_private::FormatEntity::Entry::ThreadInfo, lldb_private::FormatEntity::Entry::ThreadName, lldb_private::FormatEntity::Entry::ThreadProtocolID, lldb_private::FormatEntity::Entry::ThreadQueue, lldb_private::FormatEntity::Entry::ThreadReturnValue, lldb_private::FormatEntity::Entry::ThreadStopReason, lldb_private::FormatEntity::Entry::ThreadStopReasonRaw, lldb_private::FormatEntity::Entry::type, lldb_private::FormatEntity::Entry::Variable, lldb_private::FormatEntity::Entry::VariableSynthetic, and lldb_private::Stream::Write().

Referenced by lldb_private::StackFrame::DumpUsingFormat(), lldb_private::Thread::DumpUsingFormat(), FormatCString(), lldb_private::Debugger::FormatDisassemblerAddress(), lldb_private::StringSummaryFormat::FormatObject(), and FormatStringRef().

◆ FormatCString()

bool lldb_private::FormatEntity::FormatCString ( const char *  format,
Stream s,
const SymbolContext sc,
const ExecutionContext exe_ctx,
const Address addr,
ValueObject valobj,
bool  function_changed,
bool  initial_function 
)

Definition at line 1126 of file FormatEntity.cpp.

References error(), Format(), and Parse().

◆ FormatFileSpec()

bool lldb_private::FormatEntity::FormatFileSpec ( const FileSpec file,
Stream s,
llvm::StringRef  elements,
llvm::StringRef  element_format 
)

◆ FormatStringRef()

bool lldb_private::FormatEntity::FormatStringRef ( const llvm::StringRef &  format,
Stream s,
const SymbolContext sc,
const ExecutionContext exe_ctx,
const Address addr,
ValueObject valobj,
bool  function_changed,
bool  initial_function 
)

Definition at line 1109 of file FormatEntity.cpp.

References error(), Format(), and Parse().

Referenced by DumpValue(), and lldb_private::formatters::LibcxxContainerSummaryProvider().

◆ Parse()

Status lldb_private::FormatEntity::Parse ( const llvm::StringRef &  format,
Entry entry 
)

◆ PrettyPrintFunctionArguments()

void lldb_private::FormatEntity::PrettyPrintFunctionArguments ( Stream out_stream,
VariableList const &  args,
ExecutionContextScope exe_scope 
)