Commit | Line | Data |
---|---|---|
d2e6263c | 1 | /* Objective-C language support definitions for GDB, the GNU debugger. |
437666f8 | 2 | |
7b6bb8da | 3 | Copyright (C) 1992, 2005, 2007, 2008, 2009, 2010, 2011 |
4c38e0a4 | 4 | Free Software Foundation, Inc. |
b81654f1 | 5 | |
437666f8 | 6 | Contributed by Apple Computer, Inc. |
b81654f1 | 7 | |
437666f8 AC |
8 | This program is free software; you can redistribute it and/or modify |
9 | it under the terms of the GNU General Public License as published by | |
a9762ec7 | 10 | the Free Software Foundation; either version 3 of the License, or |
437666f8 | 11 | (at your option) any later version. |
b81654f1 | 12 | |
437666f8 AC |
13 | This program is distributed in the hope that it will be useful, |
14 | but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | GNU General Public License for more details. | |
b81654f1 | 17 | |
437666f8 | 18 | You should have received a copy of the GNU General Public License |
a9762ec7 | 19 | along with this program. If not, see <http://www.gnu.org/licenses/>. */ |
b81654f1 | 20 | |
2cf6873c AF |
21 | #if !defined(OBJC_LANG_H) |
22 | #define OBJC_LANG_H | |
23 | ||
24 | struct stoken; | |
25 | ||
b81654f1 | 26 | struct value; |
fe898f56 | 27 | struct block; |
b81654f1 | 28 | |
d2e6263c | 29 | extern int objc_parse (void); /* Defined in c-exp.y */ |
b81654f1 | 30 | |
d2e6263c | 31 | extern void objc_error (char *); /* Defined in c-exp.y */ |
b81654f1 | 32 | |
3b7538c0 UW |
33 | extern CORE_ADDR lookup_objc_class (struct gdbarch *gdbarch, |
34 | char *classname); | |
35 | extern CORE_ADDR lookup_child_selector (struct gdbarch *gdbarch, | |
36 | char *methodname); | |
b81654f1 | 37 | |
9a3d7dfd | 38 | extern char *objc_demangle (const char *mangled, int options); |
b81654f1 | 39 | |
36e53c63 | 40 | extern int find_objc_msgcall (CORE_ADDR pc, CORE_ADDR *new_pc); |
b81654f1 | 41 | |
36e53c63 | 42 | extern char *parse_selector (char *method, char **selector); |
b81654f1 | 43 | |
36e53c63 AF |
44 | extern char *parse_method (char *method, char *type, |
45 | char **class, char **category, | |
46 | char **selector); | |
b81654f1 | 47 | |
36e53c63 AF |
48 | extern char *find_imps (struct symtab *symtab, struct block *block, |
49 | char *method, struct symbol **syms, | |
50 | unsigned int *nsym, unsigned int *ndebug); | |
51 | ||
3b7538c0 UW |
52 | extern struct value *value_nsstring (struct gdbarch *gdbarch, |
53 | char *ptr, int len); | |
2cf6873c AF |
54 | |
55 | /* for parsing Objective C */ | |
56 | extern void start_msglist (void); | |
57 | extern void add_msglist (struct stoken *str, int addcolon); | |
58 | extern int end_msglist (void); | |
59 | ||
b9362cc7 AC |
60 | struct symbol *lookup_struct_typedef (char *name, struct block *block, |
61 | int noerr); | |
62 | ||
2cf6873c | 63 | #endif |