Files
clang-p2996/lldb/include/lldb/Target/ThreadPlanStepOverRange.h
Greg Clayton e0d378b334 Fixed the LLDB build so that we can have private types, private enums and
public types and public enums. This was done to keep the SWIG stuff from
parsing all sorts of enums and types that weren't needed, and allows us to
abstract our API better.

llvm-svn: 128239
2011-03-24 21:19:54 +00:00

58 lines
1.7 KiB
C++

//===-- ThreadPlanStepOverRange.h -------------------------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
#ifndef liblldb_ThreadPlanStepOverRange_h_
#define liblldb_ThreadPlanStepOverRange_h_
// C Includes
// C++ Includes
// Other libraries and framework includes
// Project includes
#include "lldb/Core/AddressRange.h"
#include "lldb/Target/StackID.h"
#include "lldb/Target/Thread.h"
#include "lldb/Target/ThreadPlanStepRange.h"
namespace lldb_private {
class ThreadPlanStepOverRange : public ThreadPlanStepRange
{
public:
virtual ~ThreadPlanStepOverRange ();
virtual void GetDescription (Stream *s, lldb::DescriptionLevel level);
virtual bool ShouldStop (Event *event_ptr);
virtual bool
IsMasterPlan()
{
return true;
}
protected:
ThreadPlanStepOverRange (Thread &thread, const AddressRange &range, const SymbolContext &addr_context, lldb::RunMode stop_others, bool okay_to_discard = false);
private:
friend ThreadPlan *
Thread::QueueThreadPlanForStepRange (bool abort_other_plans,
StepType type,
const AddressRange &range,
const SymbolContext &addr_context,
lldb::RunMode stop_others,
bool avoid_code_without_debug_info);
DISALLOW_COPY_AND_ASSIGN (ThreadPlanStepOverRange);
};
} // namespace lldb_private
#endif // liblldb_ThreadPlanStepOverRange_h_