本文整理汇总了C++中lldb::SBError::SetErrorString方法的典型用法代码示例。如果您正苦于以下问题:C++ SBError::SetErrorString方法的具体用法?C++ SBError::SetErrorString怎么用?C++ SBError::SetErrorString使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类lldb::SBError
的用法示例。
在下文中一共展示了SBError::SetErrorString方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ReadRawData
size_t SBData::ReadRawData(lldb::SBError &error, lldb::offset_t offset,
void *buf, size_t size) {
Log *log(lldb_private::GetLogIfAllCategoriesSet(LIBLLDB_LOG_API));
void *ok = NULL;
if (!m_opaque_sp.get()) {
error.SetErrorString("no value to read from");
} else {
uint32_t old_offset = offset;
ok = m_opaque_sp->GetU8(&offset, buf, size);
if ((offset == old_offset) || (ok == NULL))
error.SetErrorString("unable to read data");
}
if (log)
log->Printf("SBData::ReadRawData (error=%p,offset=%" PRIu64
",buf=%p,size=%" PRIu64 ") => "
"(%p)",
static_cast<void *>(error.get()), offset,
static_cast<void *>(buf), static_cast<uint64_t>(size),
static_cast<void *>(ok));
return ok ? size : 0;
}
示例2: log
lldb::addr_t
SBData::GetAddress (lldb::SBError& error, uint32_t offset)
{
LogSP log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API));
lldb::addr_t value = 0;
if (!m_opaque_sp.get())
{
error.SetErrorString("no value to read from");
}
else
{
uint32_t old_offset = offset;
value = m_opaque_sp->GetAddress(&offset);
if (offset == old_offset)
error.SetErrorString("unable to read data");
}
if (log)
log->Printf ("SBData::GetAddress (error=%p,offset=%d) => "
"(%p)", error.get(), offset, (void*)value);
return value;
}
示例3:
int64_t
SBData::GetSignedInt64 (lldb::SBError& error, lldb::offset_t offset)
{
Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API));
int64_t value = 0;
if (!m_opaque_sp.get())
{
error.SetErrorString("no value to read from");
}
else
{
uint32_t old_offset = offset;
value = (int64_t)m_opaque_sp->GetMaxS64(&offset, 8);
if (offset == old_offset)
error.SetErrorString("unable to read data");
}
if (log)
log->Printf ("SBData::GetSignedInt64 (error=%p,offset=%" PRIu64 ") => "
"(%" PRId64 ")", error.get(), offset, value);
return value;
}
示例4: filename_spec
lldb::SBTarget
SBDebugger::CreateTarget (const char *filename,
const char *target_triple,
const char *platform_name,
bool add_dependent_modules,
lldb::SBError& sb_error)
{
SBTarget sb_target;
TargetSP target_sp;
if (m_opaque_sp)
{
sb_error.Clear();
FileSpec filename_spec (filename, true);
OptionGroupPlatform platform_options (false);
platform_options.SetPlatformName (platform_name);
sb_error.ref() = m_opaque_sp->GetTargetList().CreateTarget (*m_opaque_sp,
filename_spec,
target_triple,
add_dependent_modules,
&platform_options,
target_sp);
if (sb_error.Success())
sb_target.SetSP (target_sp);
}
else
{
sb_error.SetErrorString("invalid target");
}
LogSP log(GetLogIfAllCategoriesSet (LIBLLDB_LOG_API));
if (log)
{
log->Printf ("SBDebugger(%p)::CreateTarget (filename=\"%s\", triple=%s, platform_name=%s, add_dependent_modules=%u, error=%s) => SBTarget(%p)",
m_opaque_sp.get(),
filename,
target_triple,
platform_name,
add_dependent_modules,
sb_error.GetCString(),
target_sp.get());
}
return sb_target;
}
示例5: api_locker
lldb::addr_t
SBProcess::ReadPointerFromMemory (addr_t addr, lldb::SBError &sb_error)
{
lldb::addr_t ptr = LLDB_INVALID_ADDRESS;
if (m_opaque_sp)
{
Error error;
Mutex::Locker api_locker (m_opaque_sp->GetTarget().GetAPIMutex());
ptr = m_opaque_sp->ReadPointerFromMemory (addr, error);
sb_error.SetError (error);
}
else
{
sb_error.SetErrorString ("SBProcess is invalid");
}
return ptr;
}
示例6: process_sp
uint32_t
SBProcess::GetNumSupportedHardwareWatchpoints (lldb::SBError &sb_error) const
{
Log *log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API));
uint32_t num = 0;
ProcessSP process_sp(GetSP());
if (process_sp)
{
Mutex::Locker api_locker (process_sp->GetTarget().GetAPIMutex());
sb_error.SetError(process_sp->GetWatchpointSupportInfo (num));
if (log)
log->Printf ("SBProcess(%p)::GetNumSupportedHardwareWatchpoints () => %u",
static_cast<void*>(process_sp.get()), num);
}
else
{
sb_error.SetErrorString ("SBProcess is invalid");
}
return num;
}
示例7: process_sp
uint32_t
SBProcess::LoadImage (lldb::SBFileSpec &sb_image_spec, lldb::SBError &sb_error)
{
ProcessSP process_sp(GetSP());
if (process_sp)
{
Process::StopLocker stop_locker;
if (stop_locker.TryLock(&process_sp->GetRunLock()))
{
Mutex::Locker api_locker (process_sp->GetTarget().GetAPIMutex());
return process_sp->LoadImage (*sb_image_spec, sb_error.ref());
}
else
{
LogSP log(lldb_private::GetLogIfAllCategoriesSet (LIBLLDB_LOG_API));
if (log)
log->Printf ("SBProcess(%p)::LoadImage() => error: process is running", process_sp.get());
sb_error.SetErrorString("process is running");
}
}
return LLDB_INVALID_IMAGE_TOKEN;
}