# pygccxml.declarations.declarations_matchers module

class `calldef_matcher_t`(name=None, return_type=None, arg_types=None, decl_type=None, header_dir=None, header_file=None)

  Bases: `pygccxml.declarations.declarations_matchers.declaration_matcher_t`

  Instance of this class will match callable by the following criteria:
    - `declaration_matcher_t` criteria
    - return type. For example: `int_t` or ‘int’
    - argument types
  `check_name`(decl)
  `decl_name_only`
  `is_full_name`()
  `name`

class `declaration_matcher_t`(name=None, decl_type=None, header_dir=None, header_file=None)

  Bases: `pygccxml.declarations.matchers.matcher_base_t`

  Instance of this class will match declarations by next criteria:
    - declaration name, also could be fully qualified name Example: wstring or ::std::wstring
    - declaration type Example: `class_t`, `namespace_t`, `enumeration_t`
    - location within file system ( file or directory )
  `check_name`(decl)
  `decl_name_only`
  `is_full_name`()
  `name`

class `namespace_matcher_t`(name=None)

  Bases: `pygccxml.declarations.declarations_matchers.declaration_matcher_t`

  Instance of this class will match namespaces by name.

  `check_name`(decl)
  `decl_name_only`
  `is_full_name`()
  `name`

class `operator_matcher_t`(name=None, symbol=None, return_type=None, arg_types=None, decl_type=None, header_dir=None, header_file=None)

  Bases: `pygccxml.declarations.declarations_matchers.calldef_matcher_t`

  Instance of this class will match operators by next criteria:
    - `calldef_matcher_t` criteria
    - operator symbol: =, !=, (), [] and etc
  `check_name`(decl)
  `decl_name_only`
  `is_full_name`()
  `name`

class `variable_matcher_t`(name=None, decl_type=None, header_dir=None, header_file=None)

  Bases: `pygccxml.declarations.declarations_matchers.declaration_matcher_t`

  Instance of this class will match variables by next criteria:
    - `declaration_matcher_t` criteria
    - variable type. Example: `int_t` or ‘int’
  `check_name`(decl)
  `decl_name_only`
  `is_full_name`()
  `name`