Move other gdbtk testsuite changelog entries here
[deliverable/binutils-gdb.git] / gdb / gdbtk-wrapper.h
CommitLineData
c98fe0c1
JI
1/* longjmp-free interface between gdb and gdbtk.
2 Copyright 1999 Free Software Foundation, Inc.
3
4This file is part of GDB. It contains routines to safely call common gdb
5functions without the fear of longjmp'ing.
6
7This program is free software; you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation; either version 2 of the License, or
10(at your option) any later version.
11
12This program is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with this program; if not, write to the Free Software
19Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
20
21#ifndef GDBTK_WRAPPER_H
22#define GDBTK_WRAPPER_H
23/* Use this struct used to pass arguments to wrapper routines. We assume
24 (arbitrarily) that no gdb function takes more than ten arguments. */
25struct gdb_wrapper_arguments {
26
27 /* Pointer to some result from the gdb function call, if any */
28 char *result;
29
30 /* The list of arguments. */
31 char *args[10];
32};
33
34/* Whenever any gdb function wrapper is called, its return status is: */
35typedef enum gdb_wrapper_status { GDB_OK, GDB_ERROR } gdb_result;
36
37/* This list of functions which have been wrapped. Please keep this list
38 in alphabetical order, using "GDB_" to prefix the actual name of the
39 function. */
40extern gdb_result GDB_evaluate_expression PARAMS ((struct expression *expr, value_ptr *val));
41extern gdb_result GDB_select_frame PARAMS ((struct frame_info *fi, int level));
42extern gdb_result GDB_type_print PARAMS ((value_ptr val, char *varstring, GDB_FILE *stream, int show));
43extern gdb_result GDB_val_print PARAMS ((struct type *type, char *valaddr,
44 CORE_ADDR address, GDB_FILE *stream,
45 int format, int deref_ref, int recurse,
46 enum val_prettyprint pretty));
47extern gdb_result GDB_value_fetch_lazy PARAMS ((value_ptr value));
48extern gdb_result GDB_value_equal PARAMS ((value_ptr val1, value_ptr val2, int *result));
49extern gdb_result GDB_parse_exp_1 PARAMS ((char **stringptr, struct block *block, int comma,
50 struct expression **result));
51extern gdb_result GDB_evaluate_type PARAMS ((struct expression *exp, value_ptr *result));
52extern gdb_result GDB_block_for_pc PARAMS ((CORE_ADDR pc, struct block **result));
53extern gdb_result GDB_block_innermost_frame PARAMS ((struct block *block,
54 struct frame_info **result));
55extern gdb_result GDB_reinit_frame_cache PARAMS ((void));
56extern gdb_result GDB_find_frame_addr_in_frame_chain PARAMS ((CORE_ADDR addr,
57 struct frame_info **result));
58#endif /* GDBTK_WRAPPER_H */
59\f
60/* Local variables: */
61/* change-log-default-name: "ChangeLog-gdbtk" */
62/* End: */
This page took 0.026278 seconds and 4 git commands to generate.