GDBThreadState.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 01 Oct 2014 02:04:11 +0100
changeset 51 2fa20404923c
parent 50 61e8a7c86f38
child 67 c4ac76afe03d
permissions -rw-r--r--
Introduced GDBThreadGroupType. Currently, there's only type 'process' as it is the only type supported by GDB.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
37
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
"{ Package: 'jv:libgdbs' }"
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
50
61e8a7c86f38 Renamed GDBThreadStatus* to GDBThreadState*
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
     3
Object subclass:#GDBThreadState
37
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     4
	instanceVariableNames:''
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     5
	classVariableNames:''
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     6
	poolDictionaries:''
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     7
	category:'GDB-Core'
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     8
!
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     9
51
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    10
GDBThreadState class instanceVariableNames:'theOneAndOnlyInstance'
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    11
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    12
"
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    13
 No other class instance variables are inherited by this class.
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    14
"
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    15
!
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    16
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    17
!GDBThreadState class methodsFor:'instance creation'!
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    18
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    19
flushSingleton
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    20
    "flushes the cached singleton"
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    21
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    22
    theOneAndOnlyInstance := nil
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    23
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    24
    "
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    25
     self flushSingleton
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    26
    "
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    27
!
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    28
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    29
new
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    30
    "returns a singleton"
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    31
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    32
    ^ self theOneAndOnlyInstance.
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    33
!
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    34
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    35
theOneAndOnlyInstance
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    36
    "returns a singleton"
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    37
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    38
    self == GDBThreadState ifTrue:[ 
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    39
        self error: 'GDBThreadState is an abstract superclass'
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    40
    ].
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    41
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    42
    theOneAndOnlyInstance isNil ifTrue:[
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    43
        theOneAndOnlyInstance := self basicNew initialize.
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    44
    ].
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    45
    ^ theOneAndOnlyInstance.
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    46
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    47
    "Modified: / 01-10-2014 / 01:27:19 / Jan Vrany <jan.vrany@fit.cvut.cz>"
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    48
! !
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    49
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    50
!GDBThreadState class methodsFor:'testing'!
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    51
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    52
isAbstract
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    53
    ^ self == GDBThreadState
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    54
! !
2fa20404923c Introduced GDBThreadGroupType.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
    55
50
61e8a7c86f38 Renamed GDBThreadStatus* to GDBThreadState*
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    56
!GDBThreadState methodsFor:'testing'!
37
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    57
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    58
isRunning
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    59
    ^ false
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    61
    "Created: / 07-09-2014 / 23:22:22 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    62
!
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    63
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    64
isStopped
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
    ^ false
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
    "Created: / 07-09-2014 / 23:22:27 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    68
!
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    69
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
isTerminated
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
    ^ false
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    72
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
    "Created: / 07-09-2014 / 23:22:31 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
! !
a85f0c91f164 Some more work on threads (thread status)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75