OLD | NEW |
1 # Copyright (C) 2010-2012 Free Software Foundation, Inc. | 1 # Copyright (C) 2012-2013 Free Software Foundation, Inc. |
2 | 2 |
3 # This program is free software; you can redistribute it and/or modify | 3 # This program is free software; you can redistribute it and/or modify |
4 # it under the terms of the GNU General Public License as published by | 4 # it under the terms of the GNU General Public License as published by |
5 # the Free Software Foundation; either version 3 of the License, or | 5 # the Free Software Foundation; either version 3 of the License, or |
6 # (at your option) any later version. | 6 # (at your option) any later version. |
7 # | 7 # |
8 # This program is distributed in the hope that it will be useful, | 8 # This program is distributed in the hope that it will be useful, |
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
11 # GNU General Public License for more details. | 11 # GNU General Public License for more details. |
12 # | 12 # |
13 # You should have received a copy of the GNU General Public License | 13 # You should have received a copy of the GNU General Public License |
14 # along with this program. If not, see <http://www.gnu.org/licenses/>. | 14 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
15 | 15 |
16 import gdb | 16 import gdb |
17 | 17 |
18 class ClassName(gdb.Command): | 18 class Recognizer(object): |
19 'a' | |
20 def __init__(self): | 19 def __init__(self): |
21 gdb.Command.__init__ (self, "ClassName", gdb.COMMAND_DATA, prefix=True) | 20 self.enabled = True |
22 def invoke(self, args, from_tty): | |
23 print | |
24 | 21 |
25 ClassName() | 22 def recognize(self, type_obj): |
| 23 if type_obj.tag == 'basic_string': |
| 24 return 'string' |
| 25 return None |
| 26 |
| 27 class StringTypePrinter(object): |
| 28 def __init__(self): |
| 29 self.name = 'string' |
| 30 self.enabled = True |
| 31 |
| 32 def instantiate(self): |
| 33 return Recognizer() |
| 34 |
| 35 gdb.type_printers.append(StringTypePrinter()) |
OLD | NEW |