]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/objc-lang.h
2003-06-08 Andrew Cagney <cagney@redhat.com>
[thirdparty/binutils-gdb.git] / gdb / objc-lang.h
CommitLineData
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
25struct stoken;
26
b81654f1 27struct value;
fe898f56 28struct block;
b81654f1 29
d2e6263c 30extern int objc_parse (void); /* Defined in c-exp.y */
b81654f1 31
d2e6263c 32extern void objc_error (char *); /* Defined in c-exp.y */
b81654f1 33
d2e6263c
MS
34extern 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
38extern int c_value_print (struct value *, struct ui_file *,
39 int, enum val_prettyprint);
b81654f1 40
d2e6263c
MS
41extern CORE_ADDR lookup_objc_class (char *classname);
42extern int lookup_child_selector (char *methodname);
b81654f1 43
9a3d7dfd 44extern char *objc_demangle (const char *mangled, int options);
b81654f1 45
36e53c63 46extern int find_objc_msgcall (CORE_ADDR pc, CORE_ADDR *new_pc);
b81654f1 47
36e53c63 48extern char *parse_selector (char *method, char **selector);
b81654f1 49
36e53c63
AF
50extern char *parse_method (char *method, char *type,
51 char **class, char **category,
52 char **selector);
b81654f1 53
36e53c63
AF
54extern char *find_imps (struct symtab *symtab, struct block *block,
55 char *method, struct symbol **syms,
56 unsigned int *nsym, unsigned int *ndebug);
57
58extern struct value *value_nsstring (char *ptr, int len);
2cf6873c
AF
59
60/* for parsing Objective C */
61extern void start_msglist (void);
62extern void add_msglist (struct stoken *str, int addcolon);
63extern int end_msglist (void);
64
b9362cc7
AC
65struct symbol *lookup_struct_typedef (char *name, struct block *block,
66 int noerr);
67
2cf6873c 68#endif