LLDB mainline
lldb_private::ScriptInterpreter Class Referenceabstract

#include <ScriptInterpreter.h>

Inheritance diagram for lldb_private::ScriptInterpreter:
[legend]

Classes

struct  ExtensionTemplateRequest
 Describes one extension to emit into the generated template file. More...
class  SanitizedScriptingModuleName
 Holds an lldb_private::Module name and a "sanitized" version of it for the purposes of loading a script of that name by the relevant ScriptInterpreter. More...

Public Types

enum  ScriptReturnType {
  eScriptReturnTypeCharPtr , eScriptReturnTypeBool , eScriptReturnTypeShortInt , eScriptReturnTypeShortIntUnsigned ,
  eScriptReturnTypeInt , eScriptReturnTypeIntUnsigned , eScriptReturnTypeLongInt , eScriptReturnTypeLongIntUnsigned ,
  eScriptReturnTypeLongLong , eScriptReturnTypeLongLongUnsigned , eScriptReturnTypeFloat , eScriptReturnTypeDouble ,
  eScriptReturnTypeChar , eScriptReturnTypeCharStrOrNone , eScriptReturnTypeOpaqueObject
}

Public Member Functions

 ScriptInterpreter (Debugger &debugger, lldb::ScriptLanguage script_lang)
virtual StructuredData::DictionarySP GetInterpreterInfo ()
virtual llvm::Expected< FileSpecGenerateExtensionTemplate (const std::string &name, std::vector< ExtensionTemplateRequest > &extensions, bool generate_non_abstract_methods, std::string output_file)
 ~ScriptInterpreter () override=default
virtual bool Interrupt ()
virtual bool ExecuteOneLine (llvm::StringRef command, CommandReturnObject *result, const ExecuteScriptOptions &options=ExecuteScriptOptions())=0
virtual void ExecuteInterpreterLoop ()=0
virtual bool ExecuteOneLineWithReturn (llvm::StringRef in_string, ScriptReturnType return_type, void *ret_value, const ExecuteScriptOptions &options=ExecuteScriptOptions())
virtual Status ExecuteMultipleLines (const char *in_string, const ExecuteScriptOptions &options=ExecuteScriptOptions())
virtual Status ExportFunctionDefinitionToInterpreter (StringList &function_def)
virtual Status GenerateBreakpointCommandCallbackData (StringList &input, std::string &output, bool has_extra_args, bool is_callback)
virtual bool GenerateWatchpointCommandCallbackData (StringList &input, std::string &output, bool is_callback)
virtual bool GenerateTypeScriptFunction (const char *oneliner, std::string &output, const void *name_token=nullptr)
virtual bool GenerateTypeScriptFunction (StringList &input, std::string &output, const void *name_token=nullptr)
virtual bool GenerateScriptAliasFunction (StringList &input, std::string &output)
virtual bool GenerateTypeSynthClass (StringList &input, std::string &output, const void *name_token=nullptr)
virtual bool GenerateTypeSynthClass (const char *oneliner, std::string &output, const void *name_token=nullptr)
virtual StructuredData::ObjectSP LoadPluginModule (const FileSpec &file_spec, lldb_private::Status &error)
virtual StructuredData::DictionarySP GetDynamicSettings (StructuredData::ObjectSP plugin_module_sp, Target *target, const char *setting_name, lldb_private::Status &error)
virtual Status GenerateFunction (const char *signature, const StringList &input, bool is_callback)
virtual void CollectDataForBreakpointCommandCallback (std::vector< std::reference_wrapper< BreakpointOptions > > &options, CommandReturnObject &result)
virtual void CollectDataForWatchpointCommandCallback (WatchpointOptions *wp_options, CommandReturnObject &result)
Status SetBreakpointCommandCallback (std::vector< std::reference_wrapper< BreakpointOptions > > &bp_options_vec, const char *callback_text)
 Set the specified text as the callback for the breakpoint.
virtual Status SetBreakpointCommandCallback (BreakpointOptions &bp_options, const char *callback_text, bool is_callback)
virtual Status SetBreakpointCommandCallback (BreakpointOptions &bp_options, std::unique_ptr< BreakpointOptions::CommandData > &data_up)
 This one is for deserialization:
Status SetBreakpointCommandCallbackFunction (std::vector< std::reference_wrapper< BreakpointOptions > > &bp_options_vec, const char *function_name, StructuredData::ObjectSP extra_args_sp)
virtual Status SetBreakpointCommandCallbackFunction (BreakpointOptions &bp_options, const char *function_name, StructuredData::ObjectSP extra_args_sp)
 Set a script function as the callback for the breakpoint.
virtual void SetWatchpointCommandCallback (WatchpointOptions *wp_options, const char *user_input, bool is_callback)
 Set a one-liner as the callback for the watchpoint.
virtual bool GetScriptedSummary (const char *function_name, lldb::ValueObjectSP valobj, StructuredData::ObjectSP &callee_wrapper_sp, const TypeSummaryOptions &options, std::string &retval)
virtual bool FormatterCallbackFunction (const char *function_name, lldb::TypeImplSP type_impl_sp)
virtual void Clear ()
virtual bool RunScriptBasedCommand (const char *impl_function, llvm::StringRef args, ScriptedCommandSynchronicity synchronicity, lldb_private::CommandReturnObject &cmd_retobj, Status &error, const lldb_private::ExecutionContext &exe_ctx)
virtual bool RunScriptFormatKeyword (const char *impl_function, Process *process, std::string &output, Status &error)
virtual bool RunScriptFormatKeyword (const char *impl_function, Thread *thread, std::string &output, Status &error)
virtual bool RunScriptFormatKeyword (const char *impl_function, Target *target, std::string &output, Status &error)
virtual bool RunScriptFormatKeyword (const char *impl_function, StackFrame *frame, std::string &output, Status &error)
virtual bool RunScriptFormatKeyword (const char *impl_function, ValueObject *value, std::string &output, Status &error)
virtual bool GetDocumentationForItem (const char *item, std::string &dest)
virtual bool CheckObjectExists (const char *name)
virtual bool LoadScriptingModule (const char *filename, const LoadScriptOptions &options, lldb_private::Status &error, StructuredData::ObjectSP *module_sp=nullptr, FileSpec extra_search_dir={}, lldb::TargetSP loaded_into_target_sp={})
virtual bool IsReservedWord (const char *word)
virtual std::unique_ptr< ScriptInterpreterLockerAcquireInterpreterLock ()
const char * GetScriptInterpreterPtyName ()
virtual llvm::Expected< unsigned > GetMaxPositionalArgumentsForCallable (const llvm::StringRef &callable_name)
virtual llvm::Expected< std::string > ExtensionToImportPath (lldb::ScriptedExtension extension)
lldb::ScriptLanguage GetLanguage ()
virtual lldb::ScriptedProcessInterfaceUP CreateScriptedProcessInterface ()
virtual lldb::ScriptedThreadInterfaceSP CreateScriptedThreadInterface ()
virtual lldb::ScriptedFrameInterfaceSP CreateScriptedFrameInterface ()
virtual lldb::ScriptedFrameProviderInterfaceSP CreateScriptedFrameProviderInterface ()
virtual lldb::ScriptedThreadPlanInterfaceSP CreateScriptedThreadPlanInterface ()
virtual lldb::OperatingSystemInterfaceSP CreateOperatingSystemInterface ()
virtual lldb::ScriptedPlatformInterfaceUP GetScriptedPlatformInterface ()
virtual lldb::ScriptedHookInterfaceSP CreateScriptedHookInterface ()
virtual lldb::ScriptedBreakpointInterfaceSP CreateScriptedBreakpointInterface ()
virtual lldb::ScriptedStackFrameRecognizerInterfaceSP CreateScriptedStackFrameRecognizerInterface ()
virtual lldb::ScriptedCommandInterfaceSP CreateScriptedCommandInterface ()
virtual lldb::ScriptedStringSummaryInterfaceSP CreateScriptedStringSummaryInterface ()
virtual lldb::ScriptedSyntheticChildrenInterfaceSP CreateScriptedSyntheticChildrenInterface ()
virtual StructuredData::ObjectSP CreateStructuredDataFromScriptObject (ScriptObject obj)
virtual SanitizedScriptingModuleName GetSanitizedScriptingModuleName (llvm::StringRef name)
lldb::DataExtractorSP GetDataExtractorFromSBData (const lldb::SBData &data) const
Status GetStatusFromSBError (const lldb::SBError &error) const
EventGetOpaqueTypeFromSBEvent (const lldb::SBEvent &event) const
lldb::StreamSP GetOpaqueTypeFromSBStream (const lldb::SBStream &stream) const
lldb::ThreadSP GetOpaqueTypeFromSBThread (const lldb::SBThread &exe_ctx) const
lldb::StackFrameSP GetOpaqueTypeFromSBFrame (const lldb::SBFrame &frame) const
SymbolContext GetOpaqueTypeFromSBSymbolContext (const lldb::SBSymbolContext &sym_ctx) const
lldb::BreakpointSP GetOpaqueTypeFromSBBreakpoint (const lldb::SBBreakpoint &breakpoint) const
lldb::BreakpointLocationSP GetOpaqueTypeFromSBBreakpointLocation (const lldb::SBBreakpointLocation &break_loc) const
CommandReturnObjectGetOpaqueTypeFromSBCommandReturnObject (const lldb::SBCommandReturnObject &cmd_retobj) const
lldb::DebuggerSP GetOpaqueTypeFromSBDebugger (const lldb::SBDebugger &debugger) const
lldb::ProcessAttachInfoSP GetOpaqueTypeFromSBAttachInfo (const lldb::SBAttachInfo &attach_info) const
lldb::ProcessLaunchInfoSP GetOpaqueTypeFromSBLaunchInfo (const lldb::SBLaunchInfo &launch_info) const
std::optional< MemoryRegionInfoGetOpaqueTypeFromSBMemoryRegionInfo (const lldb::SBMemoryRegionInfo &mem_region) const
lldb::ExecutionContextRefSP GetOpaqueTypeFromSBExecutionContext (const lldb::SBExecutionContext &exe_ctx) const
lldb::StackFrameListSP GetOpaqueTypeFromSBFrameList (const lldb::SBFrameList &exe_ctx) const
lldb::ValueObjectSP GetOpaqueTypeFromSBValue (const lldb::SBValue &value) const
lldb::TargetSP GetOpaqueTypeFromSBTarget (const lldb::SBTarget &target) const
DebuggerGetDebugger ()
 Get the debugger associated with this script interpreter.
const DebuggerGetDebugger () const
Public Member Functions inherited from lldb_private::PluginInterface
 PluginInterface ()=default
virtual ~PluginInterface ()=default
virtual llvm::StringRef GetPluginName ()=0
 PluginInterface (const PluginInterface &)=delete
PluginInterfaceoperator= (const PluginInterface &)=delete

Static Public Member Functions

static std::string LanguageToString (lldb::ScriptLanguage language)
static lldb::ScriptLanguage StringToLanguage (const llvm::StringRef &string)
static llvm::StringLiteral ExtensionToString (lldb::ScriptedExtension extension)
static lldb::ScriptedExtension StringToExtension (llvm::StringRef string)

Protected Attributes

Debuggerm_debugger
lldb::ScriptLanguage m_script_lang

Detailed Description

Definition at line 152 of file ScriptInterpreter.h.

Member Enumeration Documentation

◆ ScriptReturnType

Enumerator
eScriptReturnTypeCharPtr 
eScriptReturnTypeBool 
eScriptReturnTypeShortInt 
eScriptReturnTypeShortIntUnsigned 
eScriptReturnTypeInt 
eScriptReturnTypeIntUnsigned 
eScriptReturnTypeLongInt 
eScriptReturnTypeLongIntUnsigned 
eScriptReturnTypeLongLong 
eScriptReturnTypeLongLongUnsigned 
eScriptReturnTypeFloat 
eScriptReturnTypeDouble 
eScriptReturnTypeChar 
eScriptReturnTypeCharStrOrNone 
eScriptReturnTypeOpaqueObject 

Definition at line 154 of file ScriptInterpreter.h.

Constructor & Destructor Documentation

◆ ScriptInterpreter()

◆ ~ScriptInterpreter()

lldb_private::ScriptInterpreter::~ScriptInterpreter ( )
overridedefault

Member Function Documentation

◆ AcquireInterpreterLock()

std::unique_ptr< ScriptInterpreterLocker > ScriptInterpreter::AcquireInterpreterLock ( )
virtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 299 of file ScriptInterpreter.cpp.

◆ CheckObjectExists()

virtual bool lldb_private::ScriptInterpreter::CheckObjectExists ( const char * name)
inlinevirtual

◆ Clear()

virtual void lldb_private::ScriptInterpreter::Clear ( )
inlinevirtual

Definition at line 338 of file ScriptInterpreter.h.

◆ CollectDataForBreakpointCommandCallback()

void ScriptInterpreter::CollectDataForBreakpointCommandCallback ( std::vector< std::reference_wrapper< BreakpointOptions > > & options,
CommandReturnObject & result )
virtual

◆ CollectDataForWatchpointCommandCallback()

void ScriptInterpreter::CollectDataForWatchpointCommandCallback ( WatchpointOptions * wp_options,
CommandReturnObject & result )
virtual

◆ CreateOperatingSystemInterface()

virtual lldb::OperatingSystemInterfaceSP lldb_private::ScriptInterpreter::CreateOperatingSystemInterface ( )
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 448 of file ScriptInterpreter.h.

◆ CreateScriptedBreakpointInterface()

virtual lldb::ScriptedBreakpointInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedBreakpointInterface ( )
inlinevirtual

◆ CreateScriptedCommandInterface()

virtual lldb::ScriptedCommandInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedCommandInterface ( )
inlinevirtual

◆ CreateScriptedFrameInterface()

virtual lldb::ScriptedFrameInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedFrameInterface ( )
inlinevirtual

◆ CreateScriptedFrameProviderInterface()

virtual lldb::ScriptedFrameProviderInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedFrameProviderInterface ( )
inlinevirtual

◆ CreateScriptedHookInterface()

virtual lldb::ScriptedHookInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedHookInterface ( )
inlinevirtual

◆ CreateScriptedProcessInterface()

virtual lldb::ScriptedProcessInterfaceUP lldb_private::ScriptInterpreter::CreateScriptedProcessInterface ( )
inlinevirtual

◆ CreateScriptedStackFrameRecognizerInterface()

virtual lldb::ScriptedStackFrameRecognizerInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedStackFrameRecognizerInterface ( )
inlinevirtual

◆ CreateScriptedStringSummaryInterface()

virtual lldb::ScriptedStringSummaryInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedStringSummaryInterface ( )
inlinevirtual

◆ CreateScriptedSyntheticChildrenInterface()

virtual lldb::ScriptedSyntheticChildrenInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedSyntheticChildrenInterface ( )
inlinevirtual

◆ CreateScriptedThreadInterface()

virtual lldb::ScriptedThreadInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedThreadInterface ( )
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 430 of file ScriptInterpreter.h.

◆ CreateScriptedThreadPlanInterface()

virtual lldb::ScriptedThreadPlanInterfaceSP lldb_private::ScriptInterpreter::CreateScriptedThreadPlanInterface ( )
inlinevirtual

◆ CreateStructuredDataFromScriptObject()

virtual StructuredData::ObjectSP lldb_private::ScriptInterpreter::CreateStructuredDataFromScriptObject ( ScriptObject obj)
inlinevirtual

◆ ExecuteInterpreterLoop()

virtual void lldb_private::ScriptInterpreter::ExecuteInterpreterLoop ( )
pure virtual

◆ ExecuteMultipleLines()

virtual Status lldb_private::ScriptInterpreter::ExecuteMultipleLines ( const char * in_string,
const ExecuteScriptOptions & options = ExecuteScriptOptions() )
inlinevirtual

◆ ExecuteOneLine()

virtual bool lldb_private::ScriptInterpreter::ExecuteOneLine ( llvm::StringRef command,
CommandReturnObject * result,
const ExecuteScriptOptions & options = ExecuteScriptOptions() )
pure virtual

◆ ExecuteOneLineWithReturn()

virtual bool lldb_private::ScriptInterpreter::ExecuteOneLineWithReturn ( llvm::StringRef in_string,
ScriptReturnType return_type,
void * ret_value,
const ExecuteScriptOptions & options = ExecuteScriptOptions() )
inlinevirtual

◆ ExportFunctionDefinitionToInterpreter()

virtual Status lldb_private::ScriptInterpreter::ExportFunctionDefinitionToInterpreter ( StringList & function_def)
inlinevirtual

◆ ExtensionToImportPath()

virtual llvm::Expected< std::string > lldb_private::ScriptInterpreter::ExtensionToImportPath ( lldb::ScriptedExtension extension)
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPython.

Definition at line 415 of file ScriptInterpreter.h.

◆ ExtensionToString()

◆ FormatterCallbackFunction()

virtual bool lldb_private::ScriptInterpreter::FormatterCallbackFunction ( const char * function_name,
lldb::TypeImplSP type_impl_sp )
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 333 of file ScriptInterpreter.h.

Referenced by lldb_private::TypeMatcher::Matches().

◆ GenerateBreakpointCommandCallbackData()

virtual Status lldb_private::ScriptInterpreter::GenerateBreakpointCommandCallbackData ( StringList & input,
std::string & output,
bool has_extra_args,
bool is_callback )
inlinevirtual

◆ GenerateExtensionTemplate()

llvm::Expected< FileSpec > ScriptInterpreter::GenerateExtensionTemplate ( const std::string & name,
std::vector< ExtensionTemplateRequest > & extensions,
bool generate_non_abstract_methods,
std::string output_file )
virtual

◆ GenerateFunction()

virtual Status lldb_private::ScriptInterpreter::GenerateFunction ( const char * signature,
const StringList & input,
bool is_callback )
inlinevirtual

◆ GenerateScriptAliasFunction()

virtual bool lldb_private::ScriptInterpreter::GenerateScriptAliasFunction ( StringList & input,
std::string & output )
inlinevirtual

◆ GenerateTypeScriptFunction() [1/2]

virtual bool lldb_private::ScriptInterpreter::GenerateTypeScriptFunction ( const char * oneliner,
std::string & output,
const void * name_token = nullptr )
inlinevirtual

◆ GenerateTypeScriptFunction() [2/2]

virtual bool lldb_private::ScriptInterpreter::GenerateTypeScriptFunction ( StringList & input,
std::string & output,
const void * name_token = nullptr )
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 241 of file ScriptInterpreter.h.

◆ GenerateTypeSynthClass() [1/2]

virtual bool lldb_private::ScriptInterpreter::GenerateTypeSynthClass ( const char * oneliner,
std::string & output,
const void * name_token = nullptr )
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 257 of file ScriptInterpreter.h.

◆ GenerateTypeSynthClass() [2/2]

virtual bool lldb_private::ScriptInterpreter::GenerateTypeSynthClass ( StringList & input,
std::string & output,
const void * name_token = nullptr )
inlinevirtual

◆ GenerateWatchpointCommandCallbackData()

virtual bool lldb_private::ScriptInterpreter::GenerateWatchpointCommandCallbackData ( StringList & input,
std::string & output,
bool is_callback )
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 229 of file ScriptInterpreter.h.

◆ GetDataExtractorFromSBData()

lldb::DataExtractorSP ScriptInterpreter::GetDataExtractorFromSBData ( const lldb::SBData & data) const

Definition at line 85 of file ScriptInterpreter.cpp.

References lldb::SBData::m_opaque_sp.

◆ GetDebugger() [1/2]

Debugger & lldb_private::ScriptInterpreter::GetDebugger ( )
inline

Get the debugger associated with this script interpreter.

Definition at line 583 of file ScriptInterpreter.h.

References m_debugger.

Referenced by lldb_private::ScriptedSyntheticChildren::FrontEnd::FrontEnd(), and lldb_private::ScriptedStackFrameRecognizer::ScriptedStackFrameRecognizer().

◆ GetDebugger() [2/2]

const Debugger & lldb_private::ScriptInterpreter::GetDebugger ( ) const
inline

Definition at line 584 of file ScriptInterpreter.h.

References m_debugger.

◆ GetDocumentationForItem()

virtual bool lldb_private::ScriptInterpreter::GetDocumentationForItem ( const char * item,
std::string & dest )
inlinevirtual

◆ GetDynamicSettings()

virtual StructuredData::DictionarySP lldb_private::ScriptInterpreter::GetDynamicSettings ( StructuredData::ObjectSP plugin_module_sp,
Target * target,
const char * setting_name,
lldb_private::Status & error )
inlinevirtual

◆ GetInterpreterInfo()

StructuredData::DictionarySP ScriptInterpreter::GetInterpreterInfo ( )
virtual

◆ GetLanguage()

lldb::ScriptLanguage lldb_private::ScriptInterpreter::GetLanguage ( )
inline

◆ GetMaxPositionalArgumentsForCallable()

virtual llvm::Expected< unsigned > lldb_private::ScriptInterpreter::GetMaxPositionalArgumentsForCallable ( const llvm::StringRef & callable_name)
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 405 of file ScriptInterpreter.h.

◆ GetOpaqueTypeFromSBAttachInfo()

lldb::ProcessAttachInfoSP ScriptInterpreter::GetOpaqueTypeFromSBAttachInfo ( const lldb::SBAttachInfo & attach_info) const

Definition at line 110 of file ScriptInterpreter.cpp.

References lldb::SBAttachInfo::m_opaque_sp.

◆ GetOpaqueTypeFromSBBreakpoint()

lldb::BreakpointSP ScriptInterpreter::GetOpaqueTypeFromSBBreakpoint ( const lldb::SBBreakpoint & breakpoint) const

Definition at line 89 of file ScriptInterpreter.cpp.

References lldb::SBBreakpoint::m_opaque_wp.

◆ GetOpaqueTypeFromSBBreakpointLocation()

lldb::BreakpointLocationSP ScriptInterpreter::GetOpaqueTypeFromSBBreakpointLocation ( const lldb::SBBreakpointLocation & break_loc) const

Definition at line 95 of file ScriptInterpreter.cpp.

References lldb::SBBreakpointLocation::m_opaque_wp.

◆ GetOpaqueTypeFromSBCommandReturnObject()

CommandReturnObject * ScriptInterpreter::GetOpaqueTypeFromSBCommandReturnObject ( const lldb::SBCommandReturnObject & cmd_retobj) const

Definition at line 100 of file ScriptInterpreter.cpp.

References lldb::SBCommandReturnObject::m_opaque_up.

◆ GetOpaqueTypeFromSBDebugger()

lldb::DebuggerSP ScriptInterpreter::GetOpaqueTypeFromSBDebugger ( const lldb::SBDebugger & debugger) const

Definition at line 105 of file ScriptInterpreter.cpp.

References lldb::SBDebugger::m_opaque_sp.

◆ GetOpaqueTypeFromSBEvent()

Event * ScriptInterpreter::GetOpaqueTypeFromSBEvent ( const lldb::SBEvent & event) const

Definition at line 144 of file ScriptInterpreter.cpp.

◆ GetOpaqueTypeFromSBExecutionContext()

lldb::ExecutionContextRefSP ScriptInterpreter::GetOpaqueTypeFromSBExecutionContext ( const lldb::SBExecutionContext & exe_ctx) const

Definition at line 175 of file ScriptInterpreter.cpp.

References lldb::SBExecutionContext::m_exe_ctx_sp.

◆ GetOpaqueTypeFromSBFrame()

lldb::StackFrameSP ScriptInterpreter::GetOpaqueTypeFromSBFrame ( const lldb::SBFrame & frame) const

Definition at line 137 of file ScriptInterpreter.cpp.

References lldb::SBFrame::m_opaque_sp.

◆ GetOpaqueTypeFromSBFrameList()

lldb::StackFrameListSP ScriptInterpreter::GetOpaqueTypeFromSBFrameList ( const lldb::SBFrameList & exe_ctx) const

Definition at line 180 of file ScriptInterpreter.cpp.

References lldb::SBFrameList::m_opaque_sp.

◆ GetOpaqueTypeFromSBLaunchInfo()

lldb::ProcessLaunchInfoSP ScriptInterpreter::GetOpaqueTypeFromSBLaunchInfo ( const lldb::SBLaunchInfo & launch_info) const

Definition at line 115 of file ScriptInterpreter.cpp.

References lldb::SBLaunchInfo::m_opaque_sp.

◆ GetOpaqueTypeFromSBMemoryRegionInfo()

std::optional< lldb_private::MemoryRegionInfo > ScriptInterpreter::GetOpaqueTypeFromSBMemoryRegionInfo ( const lldb::SBMemoryRegionInfo & mem_region) const

Definition at line 167 of file ScriptInterpreter.cpp.

References lldb::SBMemoryRegionInfo::m_opaque_up.

◆ GetOpaqueTypeFromSBStream()

lldb::StreamSP ScriptInterpreter::GetOpaqueTypeFromSBStream ( const lldb::SBStream & stream) const

Definition at line 148 of file ScriptInterpreter.cpp.

References lldb::SBStream::m_opaque_up.

◆ GetOpaqueTypeFromSBSymbolContext()

SymbolContext ScriptInterpreter::GetOpaqueTypeFromSBSymbolContext ( const lldb::SBSymbolContext & sym_ctx) const

Definition at line 159 of file ScriptInterpreter.cpp.

References lldb::SBSymbolContext::m_opaque_up.

◆ GetOpaqueTypeFromSBTarget()

lldb::TargetSP ScriptInterpreter::GetOpaqueTypeFromSBTarget ( const lldb::SBTarget & target) const

Definition at line 185 of file ScriptInterpreter.cpp.

References lldb::SBTarget::m_opaque_sp.

◆ GetOpaqueTypeFromSBThread()

lldb::ThreadSP ScriptInterpreter::GetOpaqueTypeFromSBThread ( const lldb::SBThread & exe_ctx) const

Definition at line 129 of file ScriptInterpreter.cpp.

◆ GetOpaqueTypeFromSBValue()

lldb::ValueObjectSP ScriptInterpreter::GetOpaqueTypeFromSBValue ( const lldb::SBValue & value) const

◆ GetSanitizedScriptingModuleName()

◆ GetScriptedPlatformInterface()

virtual lldb::ScriptedPlatformInterfaceUP lldb_private::ScriptInterpreter::GetScriptedPlatformInterface ( )
inlinevirtual

Definition at line 452 of file ScriptInterpreter.h.

◆ GetScriptedSummary()

virtual bool lldb_private::ScriptInterpreter::GetScriptedSummary ( const char * function_name,
lldb::ValueObjectSP valobj,
StructuredData::ObjectSP & callee_wrapper_sp,
const TypeSummaryOptions & options,
std::string & retval )
inlinevirtual

◆ GetScriptInterpreterPtyName()

const char * lldb_private::ScriptInterpreter::GetScriptInterpreterPtyName ( )

◆ GetStatusFromSBError()

Status ScriptInterpreter::GetStatusFromSBError ( const lldb::SBError & error) const

Definition at line 122 of file ScriptInterpreter.cpp.

References error(), and lldb_private::Status.

◆ Interrupt()

virtual bool lldb_private::ScriptInterpreter::Interrupt ( )
inlinevirtual

◆ IsReservedWord()

virtual bool lldb_private::ScriptInterpreter::IsReservedWord ( const char * word)
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 398 of file ScriptInterpreter.h.

Referenced by GetSanitizedScriptingModuleName().

◆ LanguageToString()

◆ LoadPluginModule()

virtual StructuredData::ObjectSP lldb_private::ScriptInterpreter::LoadPluginModule ( const FileSpec & file_spec,
lldb_private::Status & error )
inlinevirtual

◆ LoadScriptingModule()

bool ScriptInterpreter::LoadScriptingModule ( const char * filename,
const LoadScriptOptions & options,
lldb_private::Status & error,
StructuredData::ObjectSP * module_sp = nullptr,
FileSpec extra_search_dir = {},
lldb::TargetSP loaded_into_target_sp = {} )
virtual

◆ RunScriptBasedCommand()

virtual bool lldb_private::ScriptInterpreter::RunScriptBasedCommand ( const char * impl_function,
llvm::StringRef args,
ScriptedCommandSynchronicity synchronicity,
lldb_private::CommandReturnObject & cmd_retobj,
Status & error,
const lldb_private::ExecutionContext & exe_ctx )
inlinevirtual

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 343 of file ScriptInterpreter.h.

References error().

Referenced by CommandObjectPythonFunction::DoExecute().

◆ RunScriptFormatKeyword() [1/5]

virtual bool lldb_private::ScriptInterpreter::RunScriptFormatKeyword ( const char * impl_function,
Process * process,
std::string & output,
Status & error )
inlinevirtual

◆ RunScriptFormatKeyword() [2/5]

virtual bool lldb_private::ScriptInterpreter::RunScriptFormatKeyword ( const char * impl_function,
StackFrame * frame,
std::string & output,
Status & error )
inlinevirtual

◆ RunScriptFormatKeyword() [3/5]

virtual bool lldb_private::ScriptInterpreter::RunScriptFormatKeyword ( const char * impl_function,
Target * target,
std::string & output,
Status & error )
inlinevirtual

◆ RunScriptFormatKeyword() [4/5]

virtual bool lldb_private::ScriptInterpreter::RunScriptFormatKeyword ( const char * impl_function,
Thread * thread,
std::string & output,
Status & error )
inlinevirtual

◆ RunScriptFormatKeyword() [5/5]

virtual bool lldb_private::ScriptInterpreter::RunScriptFormatKeyword ( const char * impl_function,
ValueObject * value,
std::string & output,
Status & error )
inlinevirtual

◆ SetBreakpointCommandCallback() [1/3]

virtual Status lldb_private::ScriptInterpreter::SetBreakpointCommandCallback ( BreakpointOptions & bp_options,
const char * callback_text,
bool is_callback )
inlinevirtual

◆ SetBreakpointCommandCallback() [2/3]

virtual Status lldb_private::ScriptInterpreter::SetBreakpointCommandCallback ( BreakpointOptions & bp_options,
std::unique_ptr< BreakpointOptions::CommandData > & data_up )
inlinevirtual

This one is for deserialization:

Reimplemented in lldb_private::ScriptInterpreterPythonImpl.

Definition at line 299 of file ScriptInterpreter.h.

References lldb_private::Status::FromErrorString().

◆ SetBreakpointCommandCallback() [3/3]

Status ScriptInterpreter::SetBreakpointCommandCallback ( std::vector< std::reference_wrapper< BreakpointOptions > > & bp_options_vec,
const char * callback_text )

Set the specified text as the callback for the breakpoint.

Definition at line 272 of file ScriptInterpreter.cpp.

References error(), and SetBreakpointCommandCallback().

Referenced by lldb_private::BreakpointOptions::CreateFromStructuredData(), and SetBreakpointCommandCallback().

◆ SetBreakpointCommandCallbackFunction() [1/2]

virtual Status lldb_private::ScriptInterpreter::SetBreakpointCommandCallbackFunction ( BreakpointOptions & bp_options,
const char * function_name,
StructuredData::ObjectSP extra_args_sp )
inlinevirtual

Set a script function as the callback for the breakpoint.

Reimplemented in lldb_private::ScriptInterpreterLua, and lldb_private::ScriptInterpreterPythonImpl.

Definition at line 311 of file ScriptInterpreter.h.

References lldb_private::Status::FromErrorString().

◆ SetBreakpointCommandCallbackFunction() [2/2]

Status ScriptInterpreter::SetBreakpointCommandCallbackFunction ( std::vector< std::reference_wrapper< BreakpointOptions > > & bp_options_vec,
const char * function_name,
StructuredData::ObjectSP extra_args_sp )

◆ SetWatchpointCommandCallback()

virtual void lldb_private::ScriptInterpreter::SetWatchpointCommandCallback ( WatchpointOptions * wp_options,
const char * user_input,
bool is_callback )
inlinevirtual

Set a one-liner as the callback for the watchpoint.

Reimplemented in lldb_private::ScriptInterpreterLua, and lldb_private::ScriptInterpreterPythonImpl.

Definition at line 318 of file ScriptInterpreter.h.

◆ StringToExtension()

◆ StringToLanguage()

Member Data Documentation

◆ m_debugger

◆ m_script_lang

lldb::ScriptLanguage lldb_private::ScriptInterpreter::m_script_lang
protected

Definition at line 588 of file ScriptInterpreter.h.

Referenced by GetLanguage(), and ScriptInterpreter().


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