author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Tue, 30 Oct 2018 20:04:25 +0000 | |
changeset 159 | 5a364902a0fa |
parent 94 | 6a4377ee1563 |
child 222 | 2c06fc7c39f5 |
permissions | -rw-r--r-- |
91
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
1 |
" |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
2 |
jv:libgdbs - GNU Debugger Interface Library |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
3 |
Copyright (C) 2015-now Jan Vrany |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
4 |
|
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
5 |
This library is free software; you can redistribute it and/or |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
6 |
modify it under the terms of the GNU Lesser General Public |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
7 |
License as published by the Free Software Foundation; either |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
8 |
version 2.1 of the License. |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
9 |
|
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
10 |
This library is distributed in the hope that it will be useful, |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
11 |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
12 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
13 |
Lesser General Public License for more details. |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
14 |
|
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
15 |
You should have received a copy of the GNU Lesser General Public |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
16 |
License along with this library; if not, write to the Free Software |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
17 |
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
18 |
" |
3
29ea333a1811
More work on events and parsing.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
19 |
"{ Package: 'jv:libgdbs' }" |
29ea333a1811
More work on events and parsing.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
20 |
|
78 | 21 |
"{ NameSpace: Smalltalk }" |
22 |
||
6 | 23 |
Object subclass:#GDBCommand |
7
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
24 |
instanceVariableNames:'token' |
3
29ea333a1811
More work on events and parsing.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
25 |
classVariableNames:'' |
29ea333a1811
More work on events and parsing.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
26 |
poolDictionaries:'' |
6 | 27 |
category:'GDB-Core-Commands' |
3
29ea333a1811
More work on events and parsing.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
28 |
! |
29ea333a1811
More work on events and parsing.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
29 |
|
91
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
30 |
!GDBCommand class methodsFor:'documentation'! |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
31 |
|
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
32 |
copyright |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
33 |
" |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
34 |
jv:libgdbs - GNU Debugger Interface Library |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
35 |
Copyright (C) 2015-now Jan Vrany |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
36 |
|
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
37 |
This library is free software; you can redistribute it and/or |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
38 |
modify it under the terms of the GNU Lesser General Public |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
39 |
License as published by the Free Software Foundation; either |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
40 |
version 2.1 of the License. |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
41 |
|
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
42 |
This library is distributed in the hope that it will be useful, |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
43 |
but WITHOUT ANY WARRANTY; without even the implied warranty of |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
44 |
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
45 |
Lesser General Public License for more details. |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
46 |
|
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
47 |
You should have received a copy of the GNU Lesser General Public |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
48 |
License along with this library; if not, write to the Free Software |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
49 |
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
50 |
" |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
51 |
! ! |
472a4841a8b6
License this package under 'GNU Lesser General Public License'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
85
diff
changeset
|
52 |
|
94
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
53 |
!GDBCommand class methodsFor:'utilities'! |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
54 |
|
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
55 |
parse: aStringOrStream |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
56 |
"Return an sub-instance of GDBCommand from textual representation" |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
57 |
|
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
58 |
^ (GDBMIParser on: aStringOrStream readStream) parseCommand. |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
59 |
|
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
60 |
" |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
61 |
GDBCommand parse: 'b new.c : 123' |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
62 |
" |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
63 |
|
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
64 |
"Created: / 08-01-2018 / 19:22:02 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
65 |
! ! |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
66 |
|
7
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
67 |
!GDBCommand methodsFor:'accessing'! |
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
68 |
|
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
69 |
token |
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
70 |
^ token |
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
71 |
! |
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
72 |
|
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
73 |
token:anInteger |
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
74 |
token := anInteger. |
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
75 |
! ! |
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
76 |
|
20
76ac209277a7
Unified implementation of #propertyAt: & #propertyAt:put:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
11
diff
changeset
|
77 |
!GDBCommand methodsFor:'accessing-descriptors'! |
76ac209277a7
Unified implementation of #propertyAt: & #propertyAt:put:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
11
diff
changeset
|
78 |
|
45
deb908479a37
Code refactored to use Magritte to meta-describe GDB objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
20
diff
changeset
|
79 |
resultDescription |
deb908479a37
Code refactored to use Magritte to meta-describe GDB objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
20
diff
changeset
|
80 |
^ GDBMAContainer new |
20
76ac209277a7
Unified implementation of #propertyAt: & #propertyAt:put:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
11
diff
changeset
|
81 |
|
76ac209277a7
Unified implementation of #propertyAt: & #propertyAt:put:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
11
diff
changeset
|
82 |
"Created: / 19-06-2014 / 21:39:21 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
45
deb908479a37
Code refactored to use Magritte to meta-describe GDB objects.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
20
diff
changeset
|
83 |
"Modified: / 23-09-2014 / 23:37:34 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
20
76ac209277a7
Unified implementation of #propertyAt: & #propertyAt:put:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
11
diff
changeset
|
84 |
! ! |
76ac209277a7
Unified implementation of #propertyAt: & #propertyAt:put:...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
11
diff
changeset
|
85 |
|
7
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
86 |
!GDBCommand methodsFor:'converting'! |
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
87 |
|
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
88 |
asString |
85
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
89 |
^ String streamContents: [ :s | (GDBMIPrinter on: s) printCommand: self ] |
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
90 |
|
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
91 |
"Created: / 09-06-2014 / 18:42:11 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
92 |
"Modified: / 11-07-2017 / 23:14:14 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
93 |
! ! |
7
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
94 |
|
85
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
95 |
!GDBCommand methodsFor:'printing & storing'! |
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
96 |
|
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
97 |
printOn: aStream |
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
98 |
super printOn: aStream. |
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
99 |
aStream nextPut: $(; nextPutAll: self asString; nextPut:$) |
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
100 |
|
6fea1000a2a5
Implemented proper quoting of MI commands
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
78
diff
changeset
|
101 |
"Created: / 11-07-2017 / 23:23:19 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
7
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
102 |
! ! |
7a51f98e7162
Initial implementation of event dispatcher and event pump.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
6
diff
changeset
|
103 |
|
11
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
104 |
!GDBCommand methodsFor:'testing'! |
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
105 |
|
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
106 |
isCLICommand |
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
107 |
^ false |
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
108 |
! |
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
109 |
|
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
110 |
isMICommand |
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
111 |
^ false |
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
112 |
! ! |
474fbb650afe
PTY support refactored to use GDBPTY object.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
7
diff
changeset
|
113 |
|
94
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
114 |
!GDBCommand class methodsFor:'documentation'! |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
115 |
|
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
116 |
version_HG |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
117 |
|
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
118 |
^ '$Changeset: <not expanded> $' |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
119 |
! ! |
6a4377ee1563
Added `GDBCommand class >> parse:`
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
91
diff
changeset
|
120 |