GDB (xrefs)
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
gdb.xmethod.XMethodMatcher Class Reference
Inheritance diagram for gdb.xmethod.XMethodMatcher:
gdb.xmethod.SimpleXMethodMatcher gdb.xmethod.SimpleXMethodMatcher

Public Member Functions

 __init__ (self, name)
 
 match (self, class_type, method_name)
 
 __init__ (self, name)
 
 match (self, class_type, method_name)
 

Public Attributes

 name
 
 enabled
 
 methods
 

Detailed Description

Abstract base class for matching an xmethod.

When looking for xmethods, GDB invokes the `match' method of a
registered xmethod matcher to match the object type and method name.
The `match' method in concrete classes derived from this class should
return an `XMethodWorker' object, or a list of `XMethodWorker'
objects if there is a match (see below for 'XMethodWorker' class).

Attributes:
    name: The name of the matcher.
    enabled: A boolean indicating if the matcher is enabled.
    methods: A sequence of objects of type 'XMethod', or objects
        which have at least the attributes of an 'XMethod' object.
        This list is used by the 'enable'/'disable'/'info' commands to
        enable/disable/list the xmethods registered with GDB.  See
        the 'match' method below to know how this sequence is used.
        This attribute is None if the matcher chooses not have any
        xmethods managed by it.

Definition at line 44 of file xmethod.py.

Constructor & Destructor Documentation

◆ __init__() [1/2]

gdb.xmethod.XMethodMatcher.__init__ ( self,
name )
Args:
    name: An identifying name for the xmethod or the group of
          xmethods returned by the `match' method.

Reimplemented in gdb.xmethod.SimpleXMethodMatcher, and gdb.xmethod.SimpleXMethodMatcher.

Definition at line 65 of file xmethod.py.

◆ __init__() [2/2]

gdb.xmethod.XMethodMatcher.__init__ ( self,
name )
Args:
    name: An identifying name for the xmethod or the group of
          xmethods returned by the `match' method.

Reimplemented in gdb.xmethod.SimpleXMethodMatcher, and gdb.xmethod.SimpleXMethodMatcher.

Definition at line 65 of file xmethod.py.

References amd_dbgapi_inferior_info.enabled, bp_location.enabled, index_cache.enabled(), pretty_printer_smob.enabled, gdb.printing.PrettyPrinter.enabled, gdb.printing.SubPrettyPrinter.enabled, gdb.types.TypePrinter.enabled, gdb.unwinder.Unwinder.enabled(), gdb.xmethod.XMethod.enabled, gdb.xmethod.XMethodMatcher.enabled, skiplist_entry.enabled(), gdb.unwinder.Unwinder.enabled(), uploaded_tp.enabled, objc_class.methods, gdb.xmethod.XMethodMatcher.methods, gdb-gdb.TypeFlag.name, name, cache_entry.name, cache_entry_search.name, ada_exc_info.name, amd_dbgapi_register_type_flags::field.name, amd_dbgapi_register_type_flags.name(), amd_dbgapi_register_type_enum::enumerator.name, amd_dbgapi_register_type_enum.name(), arc_register_feature.name, async_signal_handler.name, async_event_handler.name, loaded_script.name, aop_map.name, block_iterator.name, subfile.name, context_stack.name, cmd_list_element.name, gdb::option::option_def.name, cli_style_option.name(), scope_component.name, header_file_location.name, attr_abbrev.name, attribute.name, cooked_index_entry.name, delayed_method_info.name, symtab_index_entry.name, file_entry.name, dwp_file.name, fnfieldlist.name, cooked_indexer::deferred_entry.name, extension_language_defn.name, f77_boolean_val.name, frame_unwind.name, gdbarch_types.Component.name, thread_info.name(), field.name(), main_type.name, type.name(), fn_fieldlist.name, decl_field.name, scheme_variable.name, scheme_function.name, scheme_integer_constant.name, command_smob.name, cmdscm_completer.name, param_smob.name, pretty_printer_smob.name, interp_factory.name, interp.name(), gdb_block.name, m32c_reg.name, m68hc11_soft_reg.name, oso_el.name, macro_name_list.name, macro_key.name, single_bfd_flag_info.name, mi_command.name(), mi_opt.name, register_alias.name, windows_nat::windows_thread_info.name, nto_thread_info.name, objc_class.name, objc_method.name, objc_methcall.name, osdata_column.name, trans.name, gdb.dap.varref.BaseReference.name, gdb.disassembler.Disassembler.name, gdb.printing.PrettyPrinter.name, gdb.printing.SubPrettyPrinter.name, gdb.types.TypePrinter.name, gdb.xmethod.XMethod.name, gdb.xmethod.XMethodMatcher.name, pybp_code.name, cmdpy_completer.name, pyty_code.name, gdb::reg.name, reggroup.name(), riscv_register_feature.name(), lookup_name_info.name(), language_defn.name(), tui_win_info.name(), ada_language.name(), c_language.name(), cplus_language.name(), asm_language.name(), minimal_language.name(), d_language.name(), f_language.name(), go_language.name(), unknown_language.name(), m2_language.name(), objc_language.name(), opencl_language.name(), pascal_language.name(), notif_client.name, packet_description.name, memory_packet_config.name, remote_thread_info.name, thread_item.name, protocol_feature.name, ppc_variant.name, rust_language.name(), token_info.name, serial.name, serial_ops.name, probe_info.name, lm_info_target.name, header_file.name, other_sections.name, symbol_cache_slot.name, compunit_symtab.name, selftests::xml_test_tdesc.name, syscall.name, trace_state_variable.name, uploaded_tsv.name, tui_cmd_window.name(), tui_disasm_window.name(), tui_data_window.name(), tui_source_window.name(), tui_locator_window.name(), gdb.unwinder.Unwinder.name(), csky_supported_tdesc_register.name, elf_gnu_ifunc_cache.name, ada_task_info.name, tui_translate.name, base_field_s.name, item_with_base.name, item_with_member.name, selftests::observers::dependency_observer_data.name, user_reg.name, internal_problem.name, internal_function.name, internalvar.name, varobj_item.name, varobj.name, windows_solib.name, enum_value_name.name, _inclTable.name, gdb_xml_value.name, gdb_xml_attribute.name, gdb_xml_element.name, gdb_xml_enum.name, xtensa_register_t.name, and xtensa_regtable_t.name.

Member Function Documentation

◆ match() [1/2]

gdb.xmethod.XMethodMatcher.match ( self,
class_type,
method_name )
Match class type and method name.

In derived classes, it should return an XMethodWorker object, or a
sequence of 'XMethodWorker' objects.  Only those xmethod workers
whose corresponding 'XMethod' descriptor object is enabled should be
returned.

Args:
    class_type: The class type (gdb.Type object) to match.
    method_name: The name (string) of the method to match.

Reimplemented in gdb.xmethod.SimpleXMethodMatcher, and gdb.xmethod.SimpleXMethodMatcher.

Definition at line 75 of file xmethod.py.

◆ match() [2/2]

gdb.xmethod.XMethodMatcher.match ( self,
class_type,
method_name )
Match class type and method name.

In derived classes, it should return an XMethodWorker object, or a
sequence of 'XMethodWorker' objects.  Only those xmethod workers
whose corresponding 'XMethod' descriptor object is enabled should be
returned.

Args:
    class_type: The class type (gdb.Type object) to match.
    method_name: The name (string) of the method to match.

Reimplemented in gdb.xmethod.SimpleXMethodMatcher, and gdb.xmethod.SimpleXMethodMatcher.

Definition at line 75 of file xmethod.py.

Member Data Documentation

◆ enabled

gdb.xmethod.XMethodMatcher.enabled

◆ methods

gdb.xmethod.XMethodMatcher.methods

Definition at line 73 of file xmethod.py.

Referenced by gdb.xmethod.XMethodMatcher.__init__().

◆ name

gdb.xmethod.XMethodMatcher.name

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