blob: bf0ef3367a6175e3965e89062866fed71862e34b [file] [log] [blame]
Chris Lattner30fdc8d2010-06-08 16:52:24 +00001//===-- State.cpp -----------------------------------------------*- C++ -*-===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10// C Includes
11// C++ Includes
12// Other libraries and framework includes
13// Project includes
14#include "lldb/Core/State.h"
Eli Friedman88966972010-06-09 08:50:27 +000015#include <stdio.h>
Chris Lattner30fdc8d2010-06-08 16:52:24 +000016
17using namespace lldb;
18using namespace lldb_private;
19
20const char *
21lldb_private::StateAsCString (StateType state)
22{
23 switch (state)
24 {
Greg Clayton19388cf2010-10-18 01:45:30 +000025 case eStateInvalid: return "invalid";
26 case eStateUnloaded: return "unloaded";
Greg Claytonb766a732011-02-04 01:58:07 +000027 case eStateConnected: return "connected";
Greg Clayton19388cf2010-10-18 01:45:30 +000028 case eStateAttaching: return "attaching";
29 case eStateLaunching: return "launching";
30 case eStateStopped: return "stopped";
31 case eStateRunning: return "running";
32 case eStateStepping: return "stepping";
33 case eStateCrashed: return "crashed";
34 case eStateDetached: return "detached";
35 case eStateExited: return "exited";
36 case eStateSuspended: return "suspended";
Chris Lattner30fdc8d2010-06-08 16:52:24 +000037 }
38 static char unknown_state_string[64];
39 snprintf(unknown_state_string, sizeof (unknown_state_string), "StateType = %i", state);
40 return unknown_state_string;
41}
42
43bool
44lldb_private::StateIsRunningState (StateType state)
45{
46 switch (state)
47 {
48 case eStateAttaching:
49 case eStateLaunching:
50 case eStateRunning:
51 case eStateStepping:
52 return true;
53
Greg Claytonb766a732011-02-04 01:58:07 +000054 case eStateConnected:
Chris Lattner30fdc8d2010-06-08 16:52:24 +000055 case eStateDetached:
56 case eStateInvalid:
57 case eStateUnloaded:
58 case eStateStopped:
59 case eStateCrashed:
60 case eStateExited:
61 case eStateSuspended:
62 default:
63 break;
64 }
65 return false;
66}
67
68bool
69lldb_private::StateIsStoppedState (StateType state)
70{
71 switch (state)
72 {
73 case eStateInvalid:
Greg Claytonb766a732011-02-04 01:58:07 +000074 case eStateConnected:
Chris Lattner30fdc8d2010-06-08 16:52:24 +000075 case eStateAttaching:
76 case eStateLaunching:
77 case eStateRunning:
78 case eStateStepping:
79 case eStateDetached:
80 default:
81 break;
82
83 case eStateUnloaded:
84 case eStateStopped:
85 case eStateCrashed:
86 case eStateExited:
87 case eStateSuspended:
88 return true;
89 }
90 return false;
91}