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