Add new Queue, QueueItem, Queuelist, SBQueue, SBQueueItem classes to represent

libdispatch aka Grand Central Dispatch (GCD) queues.  Still fleshing out the
documentation and testing of these but the overall API is settling down so it's
a good time to check it in.
<rdar://problem/15600370> 

llvm-svn: 197190
This commit is contained in:
Jason Molenda
2013-12-13 00:29:16 +00:00
parent 2af6d73cdf
commit 5e8dce4dbf
30 changed files with 1533 additions and 3 deletions

View File

@@ -0,0 +1,55 @@
//===-- QueueItem.cpp -------------------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
#include "lldb/Target/Queue.h"
#include "lldb/Target/QueueItem.h"
using namespace lldb;
using namespace lldb_private;
QueueItem::QueueItem (QueueSP queue_sp) :
m_queue_wp (queue_sp),
m_kind (eQueueItemKindUnknown),
m_address ()
{
}
QueueItem::~QueueItem ()
{
}
QueueItemKind
QueueItem::GetKind() const
{
return m_kind;
}
void
QueueItem::SetKind (QueueItemKind item_kind)
{
m_kind = item_kind;
}
Address &
QueueItem::GetAddress ()
{
return m_address;
}
void
QueueItem::SetAddress (Address addr)
{
m_address = addr;
}
ThreadSP
QueueItem::GetExtendedBacktraceThread (ConstString type)
{
return ThreadSP();
}