/** * {@inheritDoc} */ public TypeDescription asErasure() { return delegate.asErasure().getSuperClass().asErasure(); }
/** * {@inheritDoc} */ public boolean isArray() { return asErasure().isArray(); }
/** * {@inheritDoc} */ public StackSize getStackSize() { return asErasure().getStackSize(); }
/** * Resolves a lazy super class description. * * @param delegate The lazy projection for which this description is a delegate. * @return A lazy description of the super class or {@code null} if the delegate does not define a super class. */ protected static Generic of(LazyProjection delegate) { return delegate.asErasure().getSuperClass() == null ? Generic.UNDEFINED : new LazySuperClass(delegate); }
/** * {@inheritDoc} */ public boolean isPrimitive() { return asErasure().isPrimitive(); }
/** * Resolves a lazy interface list. * * @param delegate The delegate for which to represent interfaces. * @return A lazy list representing the delegate's interfaces lazily. */ protected static TypeList.Generic of(LazyProjection delegate) { return new LazyInterfaceList(delegate, delegate.asErasure().getInterfaces()); }