#ifndef GDBTK_WRAPPER_H
#define GDBTK_WRAPPER_H
struct gdb_wrapper_arguments {
char *result;
char *args[10];
};
typedef struct value *value_ptr;
typedef enum gdb_wrapper_status { GDB_OK, GDB_ERROR } gdb_result;
extern gdb_result GDB_evaluate_expression (struct expression *expr,
value_ptr * val);
extern gdb_result GDB_type_print (value_ptr val, char *varstring,
struct ui_file *stream, int show);
extern gdb_result GDB_val_print (struct type *type, char *valaddr,
CORE_ADDR address, struct ui_file *stream,
int format, int deref_ref, int recurse,
enum val_prettyprint pretty);
extern gdb_result GDB_value_fetch_lazy (value_ptr value);
extern gdb_result GDB_value_equal (value_ptr val1, value_ptr val2,
int *result);
extern gdb_result GDB_parse_exp_1 (char **stringptr, struct block *block,
int comma, struct expression **result);
extern gdb_result GDB_evaluate_type (struct expression *exp,
value_ptr * result);
extern gdb_result GDB_block_for_pc (CORE_ADDR pc, struct block **result);
extern gdb_result GDB_block_innermost_frame (struct block *block,
struct frame_info **result);
extern gdb_result GDB_reinit_frame_cache (void);
extern gdb_result GDB_value_ind (value_ptr val, value_ptr * rval);
extern gdb_result GDB_value_slice (value_ptr val, int low, int num,
value_ptr * rval);
extern gdb_result GDB_value_coerce_array (value_ptr val, value_ptr * rval);
extern gdb_result GDB_value_struct_elt (value_ptr * argp, value_ptr * args,
char *name, int *static_memfunc,
char *err, value_ptr * rval);
extern gdb_result GDB_value_cast (struct type *type, value_ptr val,
value_ptr * rval);
gdb_result GDB_get_frame_block (struct frame_info *fi, struct block **rval);
extern gdb_result GDB_get_prev_frame (struct frame_info *fi,
struct frame_info **result);
extern gdb_result GDB_get_next_frame (struct frame_info *fi,
struct frame_info **result);
extern gdb_result GDB_find_relative_frame (struct frame_info *fi,
int *start,
struct frame_info **result);
extern gdb_result GDB_get_current_frame (struct frame_info **result);
#endif