SBError#
- class lldb.SBError(*args)#
Represents a container for holding any error code.
For example (from test/python_api/hello_world/TestHelloWorld.py),
def hello_world_attach_with_id_api(self): '''Create target, spawn a process, and attach to it by id.''' target = self.dbg.CreateTarget(self.exe) # Spawn a new process and don't display the stdout if not in TraceOn() mode. import subprocess popen = subprocess.Popen( [self.exe, 'abc', 'xyz'], stdout=subprocess.DEVNULL if not self.TraceOn() else None, ) listener = lldb.SBListener('my.attach.listener') error = lldb.SBError() process = target.AttachToProcessWithID(listener, popen.pid, error) self.assertTrue(error.Success() and process, PROCESS_IS_VALID) # Let's check the stack traces of the attached process. import lldbutil stacktraces = lldbutil.print_stacktraces(process, string_buffer=True) self.expect(stacktraces, exe=False, substrs = ['main.c:%d' % self.line2, '(int)argc=3']) listener = lldb.SBListener('my.attach.listener') error = lldb.SBError() process = target.AttachToProcessWithID(listener, popen.pid, error) self.assertTrue(error.Success() and process, PROCESS_IS_VALID)
checks that after the attach, there is no error condition by asserting that error.Success() is True and we get back a valid process object.
And (from test/python_api/event/TestEvent.py),
# Now launch the process, and do not stop at entry point. error = lldb.SBError() process = target.Launch(listener, None, None, None, None, None, None, 0, False, error) self.assertTrue(error.Success() and process, PROCESS_IS_VALID)
checks that after calling the target.Launch() method thereβs no error condition and we get back a void process object.
Attributes Summary
A read only property that returns the same result as GetCString().
A read only property that returns the same result as Fail().
A read only property that returns the same result as Success().
A read only property that returns the same result as GetType().
A read only property that returns the same result as GetError().
Methods Summary
Clear
(SBError self)Fail
(SBError self)Get the error string as a NULL terminated UTF8 c-string.
GetDescription
(SBError self, ...)GetError
()Get the error code.
Get the error in machine-readable form.
GetType
(SBError self)IsValid
(SBError self)SetError
(SBError self, uint32_t err, lldb)SetErrorString
(SBError self, ...)SetErrorStringWithFormat
(SBError self, ...)SetErrorToErrno
(SBError self)SetErrorToGenericError
(SBError self)Success
(SBError self)Attributes Documentation
- description#
A read only property that returns the same result as GetCString().
- fail#
A read only property that returns the same result as Fail().
- success#
A read only property that returns the same result as Success().
- type#
A read only property that returns the same result as GetType().
- value#
A read only property that returns the same result as GetError().
Methods Documentation
- Clear(SBError self)#
- Fail(SBError self) bool #
- GetCString()#
Get the error string as a NULL terminated UTF8 c-string.
This SBError object owns the returned string and this object must be kept around long enough to use the returned string.
- GetDescription(SBError self, SBStream description) bool #
- GetError()#
Get the error code.
- GetErrorData()#
Get the error in machine-readable form. Particularly useful for compiler diagnostics.
- GetType(SBError self) lldb::ErrorType #
- IsValid(SBError self) bool #
- SetError(SBError self, uint32_t err, lldb::ErrorType type)#
- SetErrorString(SBError self, char const * err_str)#
- SetErrorStringWithFormat(SBError self, char const * format, char * str1=None, char * str2=None, char * str3=None) int #
- SetErrorToErrno(SBError self)#
- SetErrorToGenericError(SBError self)#
- Success(SBError self) bool #