GDB (xrefs)

/tmp/gdb-8.1/gdb/d-lang.h
Go to the documentation of this file.
1 /* D language support definitions for GDB, the GNU debugger.
2
3 Copyright (C) 2005-2018 Free Software Foundation, Inc.
4
5 This file is part of GDB.
6
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 3 of the License, or
10 (at your option) any later version.
11
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.
16
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
19
20 #if !defined (D_LANG_H)
21 #define D_LANG_H 1
22
23 #include "symtab.h"
24
25 /* Language specific builtin types for D. Any additional types added
26 should be kept in sync with enum d_primitive_types, where these
27 types are documented. */
28
29 struct builtin_d_type
30 {
31 struct type *builtin_void;
32 struct type *builtin_bool;
33 struct type *builtin_byte;
34 struct type *builtin_ubyte;
35 struct type *builtin_short;
36 struct type *builtin_ushort;
37 struct type *builtin_int;
38 struct type *builtin_uint;
39 struct type *builtin_long;
40 struct type *builtin_ulong;
41 struct type *builtin_cent;
42 struct type *builtin_ucent;
43 struct type *builtin_float;
44 struct type *builtin_double;
45 struct type *builtin_real;
46 struct type *builtin_ifloat;
47 struct type *builtin_idouble;
48 struct type *builtin_ireal;
49 struct type *builtin_cfloat;
50 struct type *builtin_cdouble;
51 struct type *builtin_creal;
52 struct type *builtin_char;
53 struct type *builtin_wchar;
54 struct type *builtin_dchar;
55 };
56
57 /* Defined in d-exp.y. */
58
59 extern int d_parse (struct parser_state *);
60
61 extern void d_yyerror (const char *);
62
63 /* Defined in d-lang.c */
64
65 extern const char *d_main_name (void);
66
67 extern char *d_demangle (const char *mangled, int options);
68
69 extern const struct builtin_d_type *builtin_d_type (struct gdbarch *);
70
71 /* Defined in d-namespace.c */
72
73 extern struct block_symbol d_lookup_symbol_nonlocal (const struct language_defn *,
74 const char *,
75 const struct block *,
76 const domain_enum);
77
78 extern struct block_symbol d_lookup_nested_symbol (struct type *, const char *,
79 const struct block *);
80
81 /* Defined in d-valprint.c */
82
83 extern void d_val_print (struct type *type,
84 int embedded_offset, CORE_ADDR address,
85 struct ui_file *stream, int recurse,
86 struct value *val,
87 const struct value_print_options *options);
88
89 #endif /* !defined (D_LANG_H) */
gdbarch
Definition: gdbarch.c:127
CORE_ADDR
bfd_vma CORE_ADDR
Definition: common-types.h:41
builtin_d_type::builtin_dchar
struct type * builtin_dchar
Definition: d-lang.h:54
domain_enum
enum domain_enum_tag domain_enum
builtin_d_type::builtin_ucent
struct type * builtin_ucent
Definition: d-lang.h:42
builtin_d_type::builtin_char
struct type * builtin_char
Definition: d-lang.h:52
d_parse
int d_parse(struct parser_state *)
Definition: d-exp.c:3344
builtin_d_type::builtin_int
struct type * builtin_int
Definition: d-lang.h:37
builtin_d_type::builtin_cfloat
struct type * builtin_cfloat
Definition: d-lang.h:49
builtin_d_type::builtin_uint
struct type * builtin_uint
Definition: d-lang.h:38
ui_file
Definition: ui-file.h:26
builtin_d_type::builtin_ushort
struct type * builtin_ushort
Definition: d-lang.h:36
language_defn
Definition: language.h:132
d_yyerror
void d_yyerror(const char *)
symtab.h
builtin_d_type::builtin_void
struct type * builtin_void
Definition: d-lang.h:31
value_print_options
Definition: valprint.h:25
builtin_d_type::builtin_ireal
struct type * builtin_ireal
Definition: d-lang.h:48
builtin_d_type
Definition: d-lang.h:29
d_main_name
const char * d_main_name(void)
Definition: d-lang.c:38
block_symbol
Definition: symtab.h:1133
builtin_d_type
const struct builtin_d_type * builtin_d_type(struct gdbarch *)
Definition: d-lang.c:341
type
Definition: gdbtypes.h:749
d_lookup_nested_symbol
struct block_symbol d_lookup_nested_symbol(struct type *, const char *, const struct block *)
Definition: d-namespace.c:303
builtin_d_type::builtin_byte
struct type * builtin_byte
Definition: d-lang.h:33
d_demangle
char * d_demangle(const char *mangled, int options)
Definition: d-lang.c:53
builtin_d_type::builtin_short
struct type * builtin_short
Definition: d-lang.h:35
parser_state
Definition: parser-defs.h:38
d_lookup_symbol_nonlocal
struct block_symbol d_lookup_symbol_nonlocal(const struct language_defn *, const char *, const struct block *, const domain_enum)
Definition: d-namespace.c:510
block
Definition: block.h:60
value
Definition: value.c:169
builtin_d_type::builtin_long
struct type * builtin_long
Definition: d-lang.h:39
builtin_d_type::builtin_cent
struct type * builtin_cent
Definition: d-lang.h:41
builtin_d_type::builtin_ulong
struct type * builtin_ulong
Definition: d-lang.h:40
builtin_d_type::builtin_ifloat
struct type * builtin_ifloat
Definition: d-lang.h:46
builtin_d_type::builtin_double
struct type * builtin_double
Definition: d-lang.h:44
builtin_d_type::builtin_float
struct type * builtin_float
Definition: d-lang.h:43
builtin_d_type::builtin_creal
struct type * builtin_creal
Definition: d-lang.h:51
builtin_d_type::builtin_real
struct type * builtin_real
Definition: d-lang.h:45
builtin_d_type::builtin_idouble
struct type * builtin_idouble
Definition: d-lang.h:47
builtin_d_type::builtin_ubyte
struct type * builtin_ubyte
Definition: d-lang.h:34
builtin_d_type::builtin_bool
struct type * builtin_bool
Definition: d-lang.h:32
builtin_d_type::builtin_wchar
struct type * builtin_wchar
Definition: d-lang.h:53
d_val_print
void d_val_print(struct type *type, int embedded_offset, CORE_ADDR address, struct ui_file *stream, int recurse, struct value *val, const struct value_print_options *options)
Definition: d-valprint.c:76
builtin_d_type::builtin_cdouble
struct type * builtin_cdouble
Definition: d-lang.h:50