Class AdditionalLibraryIgnoresMatcher<T extends net.bytebuddy.description.type.TypeDescription>

  • All Implemented Interfaces:
    net.bytebuddy.matcher.ElementMatcher<T>, net.bytebuddy.matcher.ElementMatcher.Junction<T>

    public class AdditionalLibraryIgnoresMatcher<T extends net.bytebuddy.description.type.TypeDescription>
    extends net.bytebuddy.matcher.ElementMatcher.Junction.AbstractBase<T>
    Additional global matchers that are used to reduce number of classes we try to apply expensive matchers to.

    This is separated from GlobalIgnoresMatcher to allow for better testing. The idea is that we should be able to remove this matcher from the agent and all tests should still pass. Moreover, no classes matched by this matcher should be modified during test run.

    TODO: refactor/optimize this class (spring boot approach as a possible solution)

    • Nested Class Summary

      • Nested classes/interfaces inherited from interface net.bytebuddy.matcher.ElementMatcher

        net.bytebuddy.matcher.ElementMatcher.Junction<S extends Object>
      • Nested classes/interfaces inherited from interface net.bytebuddy.matcher.ElementMatcher.Junction

        net.bytebuddy.matcher.ElementMatcher.Junction.AbstractBase<V extends Object>, net.bytebuddy.matcher.ElementMatcher.Junction.Conjunction<W extends Object>, net.bytebuddy.matcher.ElementMatcher.Junction.Disjunction<W extends Object>
    • Constructor Detail

      • AdditionalLibraryIgnoresMatcher

        public AdditionalLibraryIgnoresMatcher()
    • Method Detail

      • additionalLibraryIgnoresMatcher

        public static <T extends net.bytebuddy.description.type.TypeDescription> net.bytebuddy.matcher.ElementMatcher.Junction<T> additionalLibraryIgnoresMatcher()
      • matches

        public boolean matches​(T target)
        Be very careful about the types of matchers used in this section as they are called on every class load, so they must be fast. Generally speaking try to only use name matchers as they don't have to load additional info.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object