]> git.ipfire.org Git - thirdparty/binutils-gdb.git/blame - gdb/jv-lang.h
Copyright updates for 2007.
[thirdparty/binutils-gdb.git] / gdb / jv-lang.h
CommitLineData
c906108c 1/* Java language support definitions for GDB, the GNU debugger.
a2bd3dcd 2
6aba47ca
DJ
3 Copyright (C) 1997, 1998, 1999, 2000, 2005, 2007
4 Free Software Foundation, Inc.
c906108c 5
c5aa993b 6 This file is part of GDB.
c906108c 7
c5aa993b
JM
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
10 the Free Software Foundation; either version 2 of the License, or
11 (at your option) any later version.
c906108c 12
c5aa993b
JM
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.
c906108c 17
c5aa993b
JM
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
197e01b6
EZ
20 Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 Boston, MA 02110-1301, USA. */
c906108c 22
75c9979e
AC
23#ifndef JV_LANG_H
24#define JV_LANG_H
25
26struct value;
27
a14ed312 28extern int java_parse (void); /* Defined in jv-exp.y */
c906108c 29
a14ed312 30extern void java_error (char *); /* Defined in jv-exp.y */
c906108c
SS
31
32/* sizeof (struct Object) */
33#define JAVA_OBJECT_SIZE (get_java_object_header_size ())
34
35extern struct type *java_int_type;
36extern struct type *java_byte_type;
37extern struct type *java_short_type;
38extern struct type *java_long_type;
39extern struct type *java_boolean_type;
40extern struct type *java_char_type;
41extern struct type *java_float_type;
42extern struct type *java_double_type;
43extern struct type *java_void_type;
44
fc1a4b47 45extern int java_val_print (struct type *, const gdb_byte *, int, CORE_ADDR,
d9fcf2fb
JM
46 struct ui_file *, int, int, int,
47 enum val_prettyprint);
c906108c 48
d9fcf2fb
JM
49extern int java_value_print (struct value *, struct ui_file *, int,
50 enum val_prettyprint);
c906108c 51
75c9979e 52extern struct value *java_class_from_object (struct value *);
c906108c 53
a14ed312 54extern struct type *type_from_class (struct value *);
c906108c 55
a14ed312 56extern struct type *java_primitive_type (int signature);
c906108c 57
a14ed312 58extern struct type *java_primitive_type_from_name (char *, int);
c906108c 59
a14ed312 60extern struct type *java_array_type (struct type *, int);
c906108c 61
a14ed312
KB
62extern struct type *get_java_object_type (void);
63extern int get_java_object_header_size (void);
c906108c 64
a14ed312 65extern struct type *java_lookup_class (char *);
c906108c 66
a14ed312 67extern int is_object_type (struct type *);
c906108c 68
d9fcf2fb
JM
69/* Defined in jv-typeprint.c */
70extern void java_print_type (struct type *, char *, struct ui_file *, int,
71 int);
c906108c 72
a14ed312 73extern char *java_demangle_type_signature (char *);
75c9979e
AC
74
75#endif