Class HierarchyChecker<T>

java.lang.Object
nl.jqno.equalsverifier.internal.checkers.HierarchyChecker<T>
All Implemented Interfaces:
Checker

public class HierarchyChecker<T> extends Object implements Checker
  • Field Details

    • config

      private final Configuration<T> config
    • type

      private final Class<T> type
    • subjectCreator

      private final SubjectCreator<T> subjectCreator
    • classProbe

      private final ClassProbe<T> classProbe
    • strictnessSuppressed

      private final boolean strictnessSuppressed
    • versionedEntity

      private final boolean versionedEntity
    • hasRedefinedSubclass

      private final boolean hasRedefinedSubclass
    • typeIsFinal

      private final boolean typeIsFinal
    • typeIsSealed

      private final boolean typeIsSealed
    • cachedHashCodeInitializer

      private final CachedHashCodeInitializer<T> cachedHashCodeInitializer
  • Constructor Details

    • HierarchyChecker

      public HierarchyChecker(Context<T> context)
  • Method Details

    • check

      public void check()
      Specified by:
      check in interface Checker
    • checkSuperclass

      private void checkSuperclass()
    • safelyCheckSuperProperties

      private void safelyCheckSuperProperties(T reference, T shallowScrambled)
    • checkSuperProperties

      private void checkSuperProperties(T reference, Object equalSuper, T shallow)
    • checkSubclass

      private void checkSubclass()
    • checkRedefinedSubclass

      private void checkRedefinedSubclass()
    • checkFinalEqualsMethod

      private void checkFinalEqualsMethod()
    • checkMatchingValues

      private <A, B extends A> void checkMatchingValues(A superObject, B subObject, String which)
    • determineSubclass

      private Class<? extends T> determineSubclass(T reference, InstanceFactory<? extends T> subclassFactory)
    • getEqualSub

      private T getEqualSub(T reference, Class<? extends T> subclass, InstanceFactory<? extends T> subclassFactory, String methodName)
    • getEqualSuper

      private Object getEqualSuper(T reference)