GDB (xrefs)
|
Public Member Functions | |
__init__ (self, name) | |
to_object (self) | |
has_children (self) | |
reset_children (self) | |
fetch_one_child (self, index) | |
child_count (self) | |
fetch_children (self, start, count) | |
find_child_by_name (self, name) | |
__init__ (self, name) | |
to_object (self) | |
has_children (self) | |
reset_children (self) | |
fetch_one_child (self, index) | |
child_count (self) | |
fetch_children (self, start, count) | |
find_child_by_name (self, name) | |
Public Attributes | |
ref = len(all_variables) | |
name = name | |
list | children = None |
dict | by_name = {} |
name_counts = defaultdict(lambda: 1) | |
int | by_name = 1 |
Protected Member Functions | |
_compute_name (self, name) | |
_compute_name (self, name) | |
Represent a variable or a scope. This class is just a base class, some methods must be implemented in subclasses. The 'ref' field can be used as the variablesReference in the protocol.
gdb.dap.varref.BaseReference.__init__ | ( | self, | |
name ) |
Create a new variable reference with the given name. NAME is a string or None. None means this does not have a name, e.g., the result of expression evaluation.
Reimplemented in gdb.dap.evaluate._SetResult, gdb.dap.evaluate._SetResult, gdb.dap.evaluate.EvaluateResult, gdb.dap.evaluate.EvaluateResult, gdb.dap.scopes._RegisterReference, gdb.dap.scopes._RegisterReference, gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
gdb.dap.varref.BaseReference.__init__ | ( | self, | |
name ) |
Create a new variable reference with the given name. NAME is a string or None. None means this does not have a name, e.g., the result of expression evaluation.
Reimplemented in gdb.dap.evaluate._SetResult, gdb.dap.evaluate._SetResult, gdb.dap.evaluate.EvaluateResult, gdb.dap.evaluate.EvaluateResult, gdb.dap.scopes._RegisterReference, gdb.dap.scopes._RegisterReference, gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
Definition at line 66 of file varref.py.
References name, _inclTable.name, ada_exc_info.name, ada_language.name(), ada_task_info.name, amd_dbgapi_register_type_enum::enumerator.name, amd_dbgapi_register_type_enum.name(), amd_dbgapi_register_type_flags::field.name, amd_dbgapi_register_type_flags.name(), aop_map.name, arc_register_feature.name, asm_language.name(), async_event_handler.name, async_signal_handler.name, attr_abbrev.name, attribute.name, base_field_s.name, block_iterator.name, c_language.name(), cache_entry.name, cache_entry_search.name, cli_style_option.name(), cmd_list_element.name, cmdpy_completer.name, cmdscm_completer.name, command_smob.name, compunit_symtab.name, context_stack.name, cooked_index_entry.name, cooked_indexer::deferred_entry.name, cplus_language.name(), csky_supported_tdesc_register.name, d_language.name(), decl_field.name, delayed_method_info.name, dwp_file.name, elf_gnu_ifunc_cache.name, enum_value_name.name, extension_language_defn.name, f77_boolean_val.name, f_language.name(), field.name(), file_entry.name, fn_fieldlist.name, fnfieldlist.name, frame_unwind.name, gdb-gdb.TypeFlag.name, gdb.dap.varref.BaseReference.name, gdb.disassembler.Disassembler.name, gdb.printing.PrettyPrinter.name, gdb.printing.SubPrettyPrinter.name, gdb.types.TypePrinter.name, gdb.unwinder.Unwinder.name(), gdb.xmethod.XMethod.name, gdb.xmethod.XMethodMatcher.name, gdb::option::option_def.name, gdb::reg.name, gdb_block.name, gdb_xml_attribute.name, gdb_xml_element.name, gdb_xml_enum.name, gdb_xml_parser.name(), gdb_xml_value.name, gdbarch_types.Component.name, go_language.name(), header_file.name, header_file_location.name, internal_function.name, internal_problem.name, internalvar.name, interp.name(), interp_factory.name, item_with_base.name, item_with_member.name, language_defn.name(), lm_info_target.name, loaded_script.name, lookup_name_info.name(), m2_language.name(), m32c_reg.name, m68hc11_soft_reg.name, macro_key.name, macro_name_list.name, main_type.name, memory_packet_config.name, mi_command.name(), mi_opt.name, minimal_language.name(), notif_client.name, nto_thread_info.name, objc_class.name, objc_language.name(), objc_methcall.name, objc_method.name, opencl_language.name(), osdata_column.name, oso_el.name, other_sections.name, packet_description.name, param_smob.name, pascal_language.name(), ppc_variant.name, pretty_printer_smob.name, probe_info.name, protocol_feature.name, pybp_code.name, pyty_code.name, reggroup.name(), register_alias.name, remote_thread_info.name, riscv_register_feature.name(), rust_language.name(), scheme_function.name, scheme_integer_constant.name, scheme_variable.name, scope_component.name, selftests::observers::dependency_observer_data.name, selftests::xml_test_tdesc.name, serial.name, serial_ops.name, single_bfd_flag_info.name, subfile.name, symbol_cache_slot.name, symtab_index_entry.name, syscall.name, syscall_desc.name, syscall_group_desc.name, thread_info.name(), thread_item.name, token_info.name, trace_state_variable.name, trans.name, tui_cmd_window.name(), tui_data_window.name(), tui_disasm_window.name(), tui_locator_window.name(), tui_source_window.name(), tui_translate.name, tui_win_info.name(), type.name(), unknown_language.name(), uploaded_tsv.name, user_reg.name, varobj.name, varobj_item.name, windows_nat::windows_thread_info.name, windows_solib.name, xtensa_register_t.name, xtensa_regtable_t.name, gdb.dap.varref.BaseReference.ref, and gdb.dap.varref.BaseReference.reset_children().
|
protected |
Definition at line 128 of file varref.py.
References gdb.dap.varref.BaseReference.by_name, and gdb.dap.varref.BaseReference.name_counts.
Referenced by gdb.dap.varref.BaseReference.fetch_children().
|
protected |
Definition at line 128 of file varref.py.
Referenced by gdb.dap.varref.BaseReference.fetch_children().
gdb.dap.varref.BaseReference.child_count | ( | self | ) |
Return the number of children of this variable.
Reimplemented in gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
Definition at line 116 of file varref.py.
Referenced by gdb.dap.varref.BaseReference.fetch_children(), and gdb.dap.varref.VariableReference.to_object().
gdb.dap.varref.BaseReference.child_count | ( | self | ) |
Return the number of children of this variable.
Reimplemented in gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
Definition at line 116 of file varref.py.
Referenced by gdb.dap.varref.BaseReference.fetch_children(), and gdb.dap.varref.VariableReference.to_object().
gdb.dap.varref.BaseReference.fetch_children | ( | self, | |
start, | |||
count ) |
Fetch children of this variable. START is the starting index. COUNT is the number to return, with 0 meaning return all. Returns an iterable of some kind.
Definition at line 139 of file varref.py.
References gdb.dap.varref.BaseReference._compute_name(), gdb.dap.varref.BaseReference.by_name, gdb.dap.scopes._ScopeReference.child_count(), gdb.dap.varref.BaseReference.child_count(), gdb.dap.varref.VariableReference.child_count(), gdb-gdb.HtabPrinter.children(), gdb-gdb.IntrusiveListPrinter.children(), gdb.dap.varref.BaseReference.children, gdb.printing.NoOpArrayPrinter.children(), gdb.printing.NoOpPointerReferencePrinter.children(), gdb.printing.NoOpStructPrinter.children(), gdb_xml_element.children, pretty_printer_worker_smob.children, varobj.children, gdb.dap.scopes._RegisterReference.fetch_one_child(), gdb.dap.scopes._ScopeReference.fetch_one_child(), gdb.dap.varref.BaseReference.fetch_one_child(), and gdb.dap.varref.VariableReference.fetch_one_child().
gdb.dap.varref.BaseReference.fetch_children | ( | self, | |
start, | |||
count ) |
Fetch children of this variable. START is the starting index. COUNT is the number to return, with 0 meaning return all. Returns an iterable of some kind.
Definition at line 139 of file varref.py.
References gdb.dap.varref.BaseReference._compute_name(), gdb.dap.varref.BaseReference.by_name, gdb.dap.scopes._ScopeReference.child_count(), gdb.dap.varref.BaseReference.child_count(), gdb.dap.varref.VariableReference.child_count(), gdb-gdb.HtabPrinter.children(), gdb-gdb.IntrusiveListPrinter.children(), gdb.dap.varref.BaseReference.children, gdb.printing.NoOpArrayPrinter.children(), gdb.printing.NoOpPointerReferencePrinter.children(), gdb.printing.NoOpStructPrinter.children(), gdb_xml_element.children, pretty_printer_worker_smob.children, varobj.children, gdb.dap.scopes._RegisterReference.fetch_one_child(), gdb.dap.scopes._ScopeReference.fetch_one_child(), gdb.dap.varref.BaseReference.fetch_one_child(), and gdb.dap.varref.VariableReference.fetch_one_child().
gdb.dap.varref.BaseReference.fetch_one_child | ( | self, | |
index ) |
Fetch one child of this variable. INDEX is the index of the child to fetch. This should return a tuple of the form (NAME, VALUE), where NAME is the name of the variable, and VALUE is a gdb.Value.
Reimplemented in gdb.dap.scopes._RegisterReference, gdb.dap.scopes._RegisterReference, gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
Definition at line 107 of file varref.py.
Referenced by gdb.dap.varref.BaseReference.fetch_children().
gdb.dap.varref.BaseReference.fetch_one_child | ( | self, | |
index ) |
Fetch one child of this variable. INDEX is the index of the child to fetch. This should return a tuple of the form (NAME, VALUE), where NAME is the name of the variable, and VALUE is a gdb.Value.
Reimplemented in gdb.dap.scopes._RegisterReference, gdb.dap.scopes._RegisterReference, gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
Definition at line 107 of file varref.py.
Referenced by gdb.dap.varref.BaseReference.fetch_children().
gdb.dap.varref.BaseReference.find_child_by_name | ( | self, | |
name ) |
Find a child of this variable, given its name. Returns the value of the child, or throws if not found.
Definition at line 159 of file varref.py.
References gdb.dap.varref.BaseReference.by_name.
gdb.dap.varref.BaseReference.find_child_by_name | ( | self, | |
name ) |
Find a child of this variable, given its name. Returns the value of the child, or throws if not found.
Definition at line 159 of file varref.py.
References gdb.dap.varref.BaseReference.by_name.
gdb.dap.varref.BaseReference.has_children | ( | self | ) |
Return True if this object has children.
Reimplemented in gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
Definition at line 90 of file varref.py.
Referenced by gdb.dap.varref.VariableReference._update_value(), and gdb.dap.varref.BaseReference.to_object().
gdb.dap.varref.BaseReference.has_children | ( | self | ) |
Return True if this object has children.
Reimplemented in gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
Definition at line 90 of file varref.py.
Referenced by gdb.dap.varref.VariableReference._update_value(), and gdb.dap.varref.BaseReference.to_object().
gdb.dap.varref.BaseReference.reset_children | ( | self | ) |
Reset any cached information about the children of this object.
Definition at line 94 of file varref.py.
References gdb.dap.varref.BaseReference.by_name, gdb-gdb.HtabPrinter.children(), gdb-gdb.IntrusiveListPrinter.children(), gdb.dap.varref.BaseReference.children, gdb.printing.NoOpArrayPrinter.children(), gdb.printing.NoOpPointerReferencePrinter.children(), gdb.printing.NoOpStructPrinter.children(), gdb_xml_element.children, pretty_printer_worker_smob.children, varobj.children, and gdb.dap.varref.BaseReference.name_counts.
Referenced by gdb.dap.varref.BaseReference.__init__(), and gdb.dap.varref.VariableReference._update_value().
gdb.dap.varref.BaseReference.reset_children | ( | self | ) |
Reset any cached information about the children of this object.
Definition at line 94 of file varref.py.
Referenced by gdb.dap.varref.BaseReference.__init__(), and gdb.dap.varref.VariableReference._update_value().
gdb.dap.varref.BaseReference.to_object | ( | self | ) |
Return a dictionary that describes this object for DAP. The resulting object is a starting point that can be filled in further. See the Scope or Variable types in the spec
Reimplemented in gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
Definition at line 79 of file varref.py.
References abbrev_info.has_children, die_info.has_children, gdb.dap.scopes._ScopeReference.has_children(), gdb.dap.varref.BaseReference.has_children(), gdb.dap.varref.VariableReference.has_children(), name, _inclTable.name, ada_exc_info.name, ada_language.name(), ada_task_info.name, amd_dbgapi_register_type_enum::enumerator.name, amd_dbgapi_register_type_enum.name(), amd_dbgapi_register_type_flags::field.name, amd_dbgapi_register_type_flags.name(), aop_map.name, arc_register_feature.name, asm_language.name(), async_event_handler.name, async_signal_handler.name, attr_abbrev.name, attribute.name, base_field_s.name, block_iterator.name, c_language.name(), cache_entry.name, cache_entry_search.name, cli_style_option.name(), cmd_list_element.name, cmdpy_completer.name, cmdscm_completer.name, command_smob.name, compunit_symtab.name, context_stack.name, cooked_index_entry.name, cooked_indexer::deferred_entry.name, cplus_language.name(), csky_supported_tdesc_register.name, d_language.name(), decl_field.name, delayed_method_info.name, dwp_file.name, elf_gnu_ifunc_cache.name, enum_value_name.name, extension_language_defn.name, f77_boolean_val.name, f_language.name(), field.name(), file_entry.name, fn_fieldlist.name, fnfieldlist.name, frame_unwind.name, gdb-gdb.TypeFlag.name, gdb.dap.varref.BaseReference.name, gdb.disassembler.Disassembler.name, gdb.printing.PrettyPrinter.name, gdb.printing.SubPrettyPrinter.name, gdb.types.TypePrinter.name, gdb.unwinder.Unwinder.name(), gdb.xmethod.XMethod.name, gdb.xmethod.XMethodMatcher.name, gdb::option::option_def.name, gdb::reg.name, gdb_block.name, gdb_xml_attribute.name, gdb_xml_element.name, gdb_xml_enum.name, gdb_xml_parser.name(), gdb_xml_value.name, gdbarch_types.Component.name, go_language.name(), header_file.name, header_file_location.name, internal_function.name, internal_problem.name, internalvar.name, interp.name(), interp_factory.name, item_with_base.name, item_with_member.name, language_defn.name(), lm_info_target.name, loaded_script.name, lookup_name_info.name(), m2_language.name(), m32c_reg.name, m68hc11_soft_reg.name, macro_key.name, macro_name_list.name, main_type.name, memory_packet_config.name, mi_command.name(), mi_opt.name, minimal_language.name(), notif_client.name, nto_thread_info.name, objc_class.name, objc_language.name(), objc_methcall.name, objc_method.name, opencl_language.name(), osdata_column.name, oso_el.name, other_sections.name, packet_description.name, param_smob.name, pascal_language.name(), ppc_variant.name, pretty_printer_smob.name, probe_info.name, protocol_feature.name, pybp_code.name, pyty_code.name, reggroup.name(), register_alias.name, remote_thread_info.name, riscv_register_feature.name(), rust_language.name(), scheme_function.name, scheme_integer_constant.name, scheme_variable.name, scope_component.name, selftests::observers::dependency_observer_data.name, selftests::xml_test_tdesc.name, serial.name, serial_ops.name, single_bfd_flag_info.name, subfile.name, symbol_cache_slot.name, symtab_index_entry.name, syscall.name, syscall_desc.name, syscall_group_desc.name, thread_info.name(), thread_item.name, token_info.name, trace_state_variable.name, trans.name, tui_cmd_window.name(), tui_data_window.name(), tui_disasm_window.name(), tui_locator_window.name(), tui_source_window.name(), tui_translate.name, tui_win_info.name(), type.name(), unknown_language.name(), uploaded_tsv.name, user_reg.name, varobj.name, varobj_item.name, windows_nat::windows_thread_info.name, windows_solib.name, xtensa_register_t.name, xtensa_regtable_t.name, and gdb.dap.varref.BaseReference.ref.
gdb.dap.varref.BaseReference.to_object | ( | self | ) |
Return a dictionary that describes this object for DAP. The resulting object is a starting point that can be filled in further. See the Scope or Variable types in the spec
Reimplemented in gdb.dap.scopes._ScopeReference, gdb.dap.scopes._ScopeReference, gdb.dap.varref.VariableReference, and gdb.dap.varref.VariableReference.
Definition at line 79 of file varref.py.
References abbrev_info.has_children, die_info.has_children, gdb.dap.scopes._ScopeReference.has_children(), gdb.dap.varref.BaseReference.has_children(), gdb.dap.varref.VariableReference.has_children(), name, _inclTable.name, ada_exc_info.name, ada_language.name(), ada_task_info.name, amd_dbgapi_register_type_enum::enumerator.name, amd_dbgapi_register_type_enum.name(), amd_dbgapi_register_type_flags::field.name, amd_dbgapi_register_type_flags.name(), aop_map.name, arc_register_feature.name, asm_language.name(), async_event_handler.name, async_signal_handler.name, attr_abbrev.name, attribute.name, base_field_s.name, block_iterator.name, c_language.name(), cache_entry.name, cache_entry_search.name, cli_style_option.name(), cmd_list_element.name, cmdpy_completer.name, cmdscm_completer.name, command_smob.name, compunit_symtab.name, context_stack.name, cooked_index_entry.name, cooked_indexer::deferred_entry.name, cplus_language.name(), csky_supported_tdesc_register.name, d_language.name(), decl_field.name, delayed_method_info.name, dwp_file.name, elf_gnu_ifunc_cache.name, enum_value_name.name, extension_language_defn.name, f77_boolean_val.name, f_language.name(), field.name(), file_entry.name, fn_fieldlist.name, fnfieldlist.name, frame_unwind.name, gdb-gdb.TypeFlag.name, gdb.dap.varref.BaseReference.name, gdb.disassembler.Disassembler.name, gdb.printing.PrettyPrinter.name, gdb.printing.SubPrettyPrinter.name, gdb.types.TypePrinter.name, gdb.unwinder.Unwinder.name(), gdb.xmethod.XMethod.name, gdb.xmethod.XMethodMatcher.name, gdb::option::option_def.name, gdb::reg.name, gdb_block.name, gdb_xml_attribute.name, gdb_xml_element.name, gdb_xml_enum.name, gdb_xml_parser.name(), gdb_xml_value.name, gdbarch_types.Component.name, go_language.name(), header_file.name, header_file_location.name, internal_function.name, internal_problem.name, internalvar.name, interp.name(), interp_factory.name, item_with_base.name, item_with_member.name, language_defn.name(), lm_info_target.name, loaded_script.name, lookup_name_info.name(), m2_language.name(), m32c_reg.name, m68hc11_soft_reg.name, macro_key.name, macro_name_list.name, main_type.name, memory_packet_config.name, mi_command.name(), mi_opt.name, minimal_language.name(), notif_client.name, nto_thread_info.name, objc_class.name, objc_language.name(), objc_methcall.name, objc_method.name, opencl_language.name(), osdata_column.name, oso_el.name, other_sections.name, packet_description.name, param_smob.name, pascal_language.name(), ppc_variant.name, pretty_printer_smob.name, probe_info.name, protocol_feature.name, pybp_code.name, pyty_code.name, reggroup.name(), register_alias.name, remote_thread_info.name, riscv_register_feature.name(), rust_language.name(), scheme_function.name, scheme_integer_constant.name, scheme_variable.name, scope_component.name, selftests::observers::dependency_observer_data.name, selftests::xml_test_tdesc.name, serial.name, serial_ops.name, single_bfd_flag_info.name, subfile.name, symbol_cache_slot.name, symtab_index_entry.name, syscall.name, syscall_desc.name, syscall_group_desc.name, thread_info.name(), thread_item.name, token_info.name, trace_state_variable.name, trans.name, tui_cmd_window.name(), tui_data_window.name(), tui_disasm_window.name(), tui_locator_window.name(), tui_source_window.name(), tui_translate.name, tui_win_info.name(), type.name(), unknown_language.name(), uploaded_tsv.name, user_reg.name, varobj.name, varobj_item.name, windows_nat::windows_thread_info.name, windows_solib.name, xtensa_register_t.name, xtensa_regtable_t.name, and gdb.dap.varref.BaseReference.ref.
int gdb.dap.varref.BaseReference.by_name = {} |
Definition at line 100 of file varref.py.
Referenced by gdb.dap.varref.BaseReference._compute_name(), gdb.dap.varref.BaseReference.fetch_children(), gdb.dap.varref.BaseReference.find_child_by_name(), and gdb.dap.varref.BaseReference.reset_children().
int gdb.dap.varref.BaseReference.by_name = 1 |
Definition at line 129 of file varref.py.
Referenced by gdb.dap.varref.BaseReference._compute_name(), gdb.dap.varref.BaseReference.fetch_children(), gdb.dap.varref.BaseReference.find_child_by_name(), and gdb.dap.varref.BaseReference.reset_children().
list gdb.dap.varref.BaseReference.children = None |
Definition at line 98 of file varref.py.
Referenced by gdb.dap.varref.VariableReference.cache_children(), gdb.dap.varref.BaseReference.fetch_children(), and gdb.dap.varref.BaseReference.reset_children().
gdb.dap.varref.BaseReference.name = name |
Definition at line 75 of file varref.py.
Referenced by gdb.printing.FlagEnumerationPrinter.__call__(), gdb.dap.varref.BaseReference.__init__(), gdb.disassembler.Disassembler.__init__(), gdb.printing.PrettyPrinter.__init__(), gdb.printing.SubPrettyPrinter.__init__(), gdb.types.TypePrinter.__init__(), gdb.xmethod.XMethod.__init__(), gdb.xmethod.XMethodMatcher.__init__(), and gdb.dap.varref.BaseReference.to_object().
gdb.dap.varref.BaseReference.name_counts = defaultdict(lambda: 1) |
Definition at line 104 of file varref.py.
Referenced by gdb.dap.varref.BaseReference._compute_name(), and gdb.dap.varref.BaseReference.reset_children().
gdb.dap.varref.BaseReference.ref = len(all_variables) |
Definition at line 74 of file varref.py.
Referenced by gdb.dap.varref.BaseReference.__init__(), and gdb.dap.varref.BaseReference.to_object().