GDB (xrefs)
|
#include "rust-lang.h"
Public Member Functions | |
rust_language () | |
const char * | name () const override |
const char * | natural_name () const override |
const char * | get_digit_separator () const override |
const std::vector< const char * > & | filename_extensions () const override |
void | language_arch_info (struct gdbarch *gdbarch, struct language_arch_info *lai) const override |
bool | sniff_from_mangled_name (const char *mangled, gdb::unique_xmalloc_ptr< char > *demangled) const override |
gdb::unique_xmalloc_ptr< char > | demangle_symbol (const char *mangled, int options) const override |
bool | can_print_type_offsets () const override |
void | print_type (struct type *type, const char *varstring, struct ui_file *stream, int show, int level, const struct type_print_options *flags) const override |
gdb::unique_xmalloc_ptr< char > | watch_location_expression (struct type *type, CORE_ADDR addr) const override |
void | value_print_inner (struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options) const override |
void | value_print (struct value *val, struct ui_file *stream, const struct value_print_options *options) const override |
struct block_symbol | lookup_symbol_nonlocal (const char *name, const struct block *block, const domain_enum domain) const override |
int | parser (struct parser_state *ps) const override |
void | emitchar (int ch, struct type *chtype, struct ui_file *stream, int quoter) const override |
void | printchar (int ch, struct type *chtype, struct ui_file *stream) const override |
void | printstr (struct ui_file *stream, struct type *elttype, const gdb_byte *string, unsigned int length, const char *encoding, int force_ellipses, const struct value_print_options *options) const override |
void | print_typedef (struct type *type, struct symbol *new_symbol, struct ui_file *stream) const override |
bool | is_string_type_p (struct type *type) const override |
bool | range_checking_on_by_default () const override |
![]() | |
language_defn (enum language lang) | |
virtual const char * | name () const =0 |
virtual const char * | natural_name () const =0 |
virtual const char * | get_digit_separator () const |
virtual const std::vector< const char * > & | filename_extensions () const |
virtual void | print_array_index (struct type *index_type, LONGEST index_value, struct ui_file *stream, const value_print_options *options) const |
virtual struct value * | read_var_value (struct symbol *var, const struct block *var_block, frame_info_ptr frame) const |
virtual struct language_pass_by_ref_info | pass_by_reference_info (struct type *type) const |
virtual bool | symbol_printing_suppressed (struct symbol *symbol) const |
virtual void | language_arch_info (struct gdbarch *, struct language_arch_info *) const =0 |
virtual struct type * | lookup_transparent_type (const char *name) const |
virtual bool | iterate_over_symbols (const struct block *block, const lookup_name_info &name, domain_enum domain, gdb::function_view< symbol_found_callback_ftype > callback) const |
symbol_name_matcher_ftype * | get_symbol_name_matcher (const lookup_name_info &lookup_name) const |
virtual std::unique_ptr< compile_instance > | get_compile_instance () const |
virtual std::string | compute_program (compile_instance *inst, const char *input, struct gdbarch *gdbarch, const struct block *expr_block, CORE_ADDR expr_pc) const |
virtual unsigned int | search_name_hash (const char *name) const |
virtual bool | sniff_from_mangled_name (const char *mangled, gdb::unique_xmalloc_ptr< char > *demangled) const |
virtual gdb::unique_xmalloc_ptr< char > | demangle_symbol (const char *mangled, int options) const |
virtual bool | can_print_type_offsets () const |
virtual void | print_type (struct type *type, const char *varstring, struct ui_file *stream, int show, int level, const struct type_print_options *flags) const =0 |
virtual CORE_ADDR | skip_trampoline (frame_info_ptr fi, CORE_ADDR pc) const |
virtual char * | class_name_from_physname (const char *physname) const |
virtual const char * | word_break_characters (void) const |
virtual void | collect_symbol_completion_matches (completion_tracker &tracker, complete_symbol_mode mode, symbol_name_match_type name_match_type, const char *text, const char *word, enum type_code code) const |
virtual struct block_symbol | lookup_symbol_nonlocal (const char *name, const struct block *block, const domain_enum domain) const |
virtual gdb::unique_xmalloc_ptr< char > | watch_location_expression (struct type *type, CORE_ADDR addr) const |
virtual void | value_print (struct value *val, struct ui_file *stream, const struct value_print_options *options) const |
virtual void | value_print_inner (struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options) const |
virtual int | parser (struct parser_state *ps) const |
virtual void | emitchar (int ch, struct type *chtype, struct ui_file *stream, int quoter) const |
virtual void | printchar (int ch, struct type *chtype, struct ui_file *stream) const |
virtual void | printstr (struct ui_file *stream, struct type *elttype, const gdb_byte *string, unsigned int length, const char *encoding, int force_ellipses, const struct value_print_options *options) const |
virtual void | print_typedef (struct type *type, struct symbol *new_symbol, struct ui_file *stream) const |
virtual bool | is_string_type_p (struct type *type) const |
virtual const char * | struct_too_deep_ellipsis () const |
virtual const char * | name_of_this () const |
virtual bool | c_style_arrays_p () const |
virtual char | string_lower_bound () const |
virtual bool | store_sym_names_in_linkage_form_p () const |
virtual bool | range_checking_on_by_default () const |
virtual enum case_sensitivity | case_sensitivity () const |
virtual enum array_ordering | array_ordering () const |
virtual enum macro_expansion | macro_expansion () const |
virtual const struct lang_varobj_ops * | varobj_ops () const |
Private Member Functions | |
void | val_print_struct (struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options) const |
void | print_enum (struct value *val, struct ui_file *stream, int recurse, const struct value_print_options *options) const |
Additional Inherited Members | |
![]() | |
enum language | la_language |
![]() | |
static const struct language_defn * | languages [nr_languages] |
![]() | |
virtual symbol_name_matcher_ftype * | get_symbol_name_matcher_inner (const lookup_name_info &lookup_name) const |
Definition at line 55 of file rust-lang.h.
|
inline |
Definition at line 58 of file rust-lang.h.
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 110 of file rust-lang.h.
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 102 of file rust-lang.h.
References gdb_demangle().
|
overridevirtual |
Reimplemented from language_defn.
Definition at line 1641 of file rust-lang.c.
References type::arch(), gdb_printf(), gdb_putc(), gdb_puts(), generic_emit_char(), rust_chartype_p(), and target_charset().
Referenced by printchar().
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 79 of file rust-lang.h.
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 74 of file rust-lang.h.
|
overridevirtual |
Reimplemented from language_defn.
Definition at line 1668 of file rust-lang.c.
References check_typedef(), type::code(), get_array_bounds(), type::name(), rust_enum_p(), rust_slice_type_p(), rust_u8_type_p(), and type::target_type().
|
overridevirtual |
Implements language_defn.
Definition at line 1585 of file rust-lang.c.
References language_arch_info::add_primitive_type(), arch_boolean_type(), arch_character_type(), arch_float_type(), arch_integer_type(), builtin_type::builtin_data_ptr, floatformats_ieee_double, floatformats_ieee_single, type::length(), make_cv_type(), rust_slice_type(), language_arch_info::set_bool_type(), and language_arch_info::set_string_char_type().
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 145 of file rust-lang.h.
References block_scope(), cp_find_first_component(), domain_name(), lookup_global_symbol(), lookup_symbol_in_static_block(), name(), block_symbol::symbol, and symbol_lookup_debug_printf.
|
inlineoverridevirtual |
Implements language_defn.
Definition at line 64 of file rust-lang.h.
Referenced by gdb.printing.FlagEnumerationPrinter::__call__(), gdb.disassembler.Disassembler::__init__(), gdb.printing.SubPrettyPrinter::__init__(), gdb.types.TypePrinter::__init__(), gdb.unwinder.Unwinder::__init__(), gdb.xmethod.XMethod::__init__(), gdb.xmethod.XMethodMatcher::__init__(), gdb.printing.PrettyPrinter::__init__(), lookup_symbol_nonlocal(), and watch_location_expression().
|
inlineoverridevirtual |
Implements language_defn.
Definition at line 69 of file rust-lang.h.
|
overridevirtual |
Reimplemented from language_defn.
Definition at line 2123 of file rust-parse.c.
References parser_state::parse_completion, parser(), and expr_builder::set_operation().
Referenced by parser().
|
private |
Definition at line 448 of file rust-lang.c.
References check_typedef(), common_val_print(), type::field(), gdb_printf(), gdb_puts(), metadata_style, field::name(), type::name(), type::num_fields(), ui_file_style::ptr(), resolve_dynamic_type(), rust_empty_enum_p(), rust_enum_p(), rust_enum_variant(), rust_tuple_struct_type_p(), cli_style_option::style(), styled_string(), field::type(), value_address(), value_contents_for_printing(), value_field(), value_type(), and variable_name_style.
Referenced by value_print_inner().
|
overridevirtual |
Implements language_defn.
Definition at line 1629 of file rust-lang.c.
References flags, and rust_internal_print_type().
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 208 of file rust-lang.h.
References check_typedef(), gdb_printf(), new_symbol(), general_symbol_info::print_name(), and type_print().
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 191 of file rust-lang.h.
References emitchar(), and gdb_puts().
|
overridevirtual |
Reimplemented from language_defn.
Definition at line 278 of file rust-lang.c.
References generic_printstr(), language_defn::printstr(), and rust_u8_type_p().
Referenced by value_print_inner().
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 223 of file rust-lang.h.
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 92 of file rust-lang.h.
References gdb_demangle().
|
private |
Definition at line 365 of file rust-lang.c.
References check_typedef(), common_val_print(), type::field(), field_is_static(), fputs_styled(), gdb_printf(), gdb_puts(), field::name(), type::name(), type::num_fields(), value_print_options::prettyformat, print_spaces(), rust_slice_type_p(), rust_tuple_struct_type_p(), rust_tuple_type_p(), rust_val_print_slice(), cli_style_option::style(), value_field(), value_type(), and variable_name_style.
Referenced by value_print_inner().
|
overridevirtual |
Reimplemented from language_defn.
Definition at line 631 of file rust-lang.c.
References check_typedef(), common_val_print(), gdb_printf(), type::is_pointer_or_reference(), type_print(), and value_type().
|
overridevirtual |
Reimplemented from language_defn.
Definition at line 522 of file rust-lang.c.
References type::arch(), check_typedef(), type::code(), gdb_puts(), generic_value_print(), get_array_bounds(), type::is_unsigned(), type::length(), type::name(), paddress(), print_enum(), printstr(), rust_decorations, rust_enum_p(), rust_u8_type_p(), type::target_type(), Val_no_prettyformat, Val_prettyformat, Val_prettyformat_default, val_print_string(), val_print_struct(), value_as_address(), value_contents_for_printing(), and value_type().
|
inlineoverridevirtual |
Reimplemented from language_defn.
Definition at line 123 of file rust-lang.h.
References check_typedef(), name(), and type_to_string().