Class NameMatcher<T extends NamedElement>

Type Parameters:
T - The type of the matched entity.
All Implemented Interfaces:
ElementMatcher<T>, ElementMatcher.Junction<T>

@Enhance public class NameMatcher<T extends NamedElement> extends ElementMatcher.Junction.ForNonNullValues<T>
A method matcher that matches a byte code element's source code name:
  • The source code name of types is equal to their binary name where arrays are appended a [] by their arity and where inner classes are appended by dollar signs to their outer class's source name.
  • Constructors and the type initializer methods are represented by the empty string as they do not represent a source code name.
  • Fields are named as in the source code.
  • Field Details

    • matcher

      private final ElementMatcher<String> matcher
      The matcher that is applied to a byte code element's source code name.
  • Constructor Details

    • NameMatcher

      public NameMatcher(ElementMatcher<String> matcher)
      Creates a new matcher for a byte code element's source name.
      Parameters:
      matcher - The matcher that is applied to a byte code element's source code name.
  • Method Details

    • doMatch

      protected boolean doMatch(T target)
      Matches the supplied value if it was found not to be null.
      Specified by:
      doMatch in class ElementMatcher.Junction.ForNonNullValues<T extends NamedElement>
      Parameters:
      target - The instance to be matched.
      Returns:
      true if the given element is matched by this matcher or false otherwise.
    • toString

      public String toString()
      Overrides:
      toString in class Object