bfd/
[deliverable/binutils-gdb.git] / gdb / jv-lang.h
CommitLineData
c906108c 1/* Java language support definitions for GDB, the GNU debugger.
a2bd3dcd 2
9b254dd1 3 Copyright (C) 1997, 1998, 1999, 2000, 2005, 2007, 2008
6aba47ca 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
a9762ec7 10 the Free Software Foundation; either version 3 of the License, or
c5aa993b 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 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/>. */
c906108c 20
75c9979e
AC
21#ifndef JV_LANG_H
22#define JV_LANG_H
23
24struct value;
25
a14ed312 26extern int java_parse (void); /* Defined in jv-exp.y */
c906108c 27
a14ed312 28extern void java_error (char *); /* Defined in jv-exp.y */
c906108c
SS
29
30/* sizeof (struct Object) */
31#define JAVA_OBJECT_SIZE (get_java_object_header_size ())
32
33extern struct type *java_int_type;
34extern struct type *java_byte_type;
35extern struct type *java_short_type;
36extern struct type *java_long_type;
37extern struct type *java_boolean_type;
38extern struct type *java_char_type;
39extern struct type *java_float_type;
40extern struct type *java_double_type;
41extern struct type *java_void_type;
42
fc1a4b47 43extern int java_val_print (struct type *, const gdb_byte *, int, CORE_ADDR,
d9fcf2fb
JM
44 struct ui_file *, int, int, int,
45 enum val_prettyprint);
c906108c 46
d9fcf2fb
JM
47extern int java_value_print (struct value *, struct ui_file *, int,
48 enum val_prettyprint);
c906108c 49
75c9979e 50extern struct value *java_class_from_object (struct value *);
c906108c 51
a14ed312 52extern struct type *type_from_class (struct value *);
c906108c 53
a14ed312 54extern struct type *java_primitive_type (int signature);
c906108c 55
a14ed312 56extern struct type *java_primitive_type_from_name (char *, int);
c906108c 57
a14ed312 58extern struct type *java_array_type (struct type *, int);
c906108c 59
a14ed312
KB
60extern struct type *get_java_object_type (void);
61extern int get_java_object_header_size (void);
c906108c 62
a14ed312 63extern struct type *java_lookup_class (char *);
c906108c 64
a14ed312 65extern int is_object_type (struct type *);
c906108c 66
d9fcf2fb
JM
67/* Defined in jv-typeprint.c */
68extern void java_print_type (struct type *, char *, struct ui_file *, int,
69 int);
c906108c 70
a14ed312 71extern char *java_demangle_type_signature (char *);
75c9979e
AC
72
73#endif
This page took 0.650171 seconds and 4 git commands to generate.