gdb: add target_ops::supports_displaced_step
[deliverable/binutils-gdb.git] / gdb / valprint.h
index 6d57554594c2a022eda2477a4ec17253511f7daa..57bc0339fcb7ce7e3bf3f27edae57a104f64015f 100644 (file)
@@ -1,6 +1,6 @@
 /* Declarations for value printing routines for GDB, the GNU debugger.
 
-   Copyright (C) 1986-2019 Free Software Foundation, Inc.
+   Copyright (C) 1986-2020 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -128,18 +128,22 @@ extern void maybe_print_array_index (struct type *index_type, LONGEST index,
                                      struct ui_file *stream,
                                     const struct value_print_options *);
 
-extern void val_print_array_elements (struct type *, LONGEST,
-                                     CORE_ADDR, struct ui_file *, int,
-                                     struct value *,
-                                     const struct value_print_options *,
-                                     unsigned int);
 
-extern void val_print_scalar_formatted (struct type *,
-                                       LONGEST,
-                                       struct value *,
+/* Print elements of an array.  */
+
+extern void value_print_array_elements (struct value *, struct ui_file *, int,
                                        const struct value_print_options *,
-                                       int,
-                                       struct ui_file *);
+                                       unsigned int);
+
+/* Print a scalar according to OPTIONS and SIZE on STREAM.  Format 'i'
+   is not supported at this level.
+
+   This is how the elements of an array or structure are printed
+   with a format.  */
+
+extern void value_print_scalar_formatted
+  (struct value *val, const struct value_print_options *options,
+   int size, struct ui_file *stream);
 
 extern void print_binary_chars (struct ui_file *, const gdb_byte *,
                                unsigned int, enum bfd_endian, bool);
@@ -204,12 +208,16 @@ struct generic_val_print_decorations
 };
 
 
-extern void generic_val_print (struct type *type,
-                              int embedded_offset, CORE_ADDR address,
-                              struct ui_file *stream, int recurse,
-                              struct value *original_value,
-                              const struct value_print_options *options,
-                              const struct generic_val_print_decorations *);
+/* Print a value in a generic way.  VAL is the value, STREAM is where
+   to print it, RECURSE is the recursion depth, OPTIONS describe how
+   the printing should be done, and D is the language-specific
+   decorations object.  Note that structs and unions cannot be printed
+   by this function.  */
+
+extern void generic_value_print (struct value *val, struct ui_file *stream,
+                                int recurse,
+                                const struct value_print_options *options,
+                                const struct generic_val_print_decorations *d);
 
 extern void generic_emit_char (int c, struct type *type, struct ui_file *stream,
                               int quoter, const char *encoding);
@@ -260,7 +268,7 @@ extern void print_command_completer (struct cmd_list_element *ignore,
    symbols won't be used except in instances where no symbol was
    found; otherwise, a minsym might be used in some instances (mostly
    involving function with non-contiguous address ranges).  Return
-   0 in case of success, when all the info in the OUT paramters is
+   0 in case of success, when all the info in the OUT parameters is
    valid.  Return 1 otherwise.  */
 
 extern int build_address_symbolic (struct gdbarch *,
@@ -282,4 +290,12 @@ extern bool val_print_check_max_depth (struct ui_file *stream, int recurse,
                                       const struct value_print_options *opts,
                                       const struct language_defn *language);
 
+/* Like common_val_print, but call value_check_printable first.  */
+
+extern void common_val_print_checked
+  (struct value *val,
+   struct ui_file *stream, int recurse,
+   const struct value_print_options *options,
+   const struct language_defn *language);
+
 #endif
This page took 0.02598 seconds and 4 git commands to generate.