GDB (xrefs)
Loading...
Searching...
No Matches
gdb.dap.varref.BaseReference Class Reference
Inheritance diagram for gdb.dap.varref.BaseReference:
gdb.dap.scopes._ScopeReference gdb.dap.scopes._ScopeReference gdb.dap.varref.VariableReference gdb.dap.varref.VariableReference gdb.dap.scopes._RegisterReference gdb.dap.scopes._RegisterReference gdb.dap.scopes._RegisterReference gdb.dap.scopes._RegisterReference gdb.dap.evaluate.EvaluateResult gdb.dap.evaluate.EvaluateResult gdb.dap.evaluate._SetResult gdb.dap.evaluate._SetResult gdb.dap.evaluate.EvaluateResult gdb.dap.evaluate.EvaluateResult gdb.dap.evaluate._SetResult gdb.dap.evaluate._SetResult

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)
 

Detailed Description

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.

Definition at line 56 of file varref.py.

Constructor & Destructor Documentation

◆ __init__() [1/2]

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.

◆ __init__() [2/2]

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().

Member Function Documentation

◆ _compute_name() [1/2]

gdb.dap.varref.BaseReference._compute_name ( self,
name )
protected

◆ _compute_name() [2/2]

gdb.dap.varref.BaseReference._compute_name ( self,
name )
protected

Definition at line 128 of file varref.py.

Referenced by gdb.dap.varref.BaseReference.fetch_children().

◆ child_count() [1/2]

gdb.dap.varref.BaseReference.child_count ( self)

◆ child_count() [2/2]

gdb.dap.varref.BaseReference.child_count ( self)

◆ fetch_children() [1/2]

◆ fetch_children() [2/2]

◆ fetch_one_child() [1/2]

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().

◆ fetch_one_child() [2/2]

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().

◆ find_child_by_name() [1/2]

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.

◆ find_child_by_name() [2/2]

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.

◆ has_children() [1/2]

gdb.dap.varref.BaseReference.has_children ( self)

◆ has_children() [2/2]

gdb.dap.varref.BaseReference.has_children ( self)

◆ reset_children() [1/2]

◆ reset_children() [2/2]

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().

◆ to_object() [1/2]

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.

◆ to_object() [2/2]

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.

Member Data Documentation

◆ by_name [1/2]

◆ by_name [2/2]

◆ children

list gdb.dap.varref.BaseReference.children = None

◆ name

◆ name_counts

gdb.dap.varref.BaseReference.name_counts = defaultdict(lambda: 1)

◆ ref

gdb.dap.varref.BaseReference.ref = len(all_variables)

The documentation for this class was generated from the following files: