Interface AnnotationValue.Loaded<U>

Type Parameters:
U - The represented value's type.
All Known Implementing Classes:
AnnotationValue.ForAnnotationDescription.Loaded, AnnotationValue.ForConstant.Loaded, AnnotationValue.ForDescriptionArray.Loaded, AnnotationValue.ForEnumerationDescription.Loaded, AnnotationValue.ForEnumerationDescription.Loaded.WithIncompatibleRuntimeType, AnnotationValue.ForEnumerationDescription.WithUnknownConstant.Loaded, AnnotationValue.ForIncompatibleType.Loaded, AnnotationValue.ForMismatchedType.Loaded, AnnotationValue.ForMissingType.Loaded, AnnotationValue.ForMissingValue.Loaded, AnnotationValue.ForTypeDescription.Loaded, AnnotationValue.Loaded.AbstractBase, AnnotationValue.Loaded.AbstractBase.ForUnresolvedProperty
Enclosing interface:
AnnotationValue<T,S>

public static interface AnnotationValue.Loaded<U>
A loaded variant of an AnnotationValue. While implementations of this value are required to be processed successfully by a ClassLoader they might still be unresolved. Typical errors on loading an annotation value are: Implementations of this interface must implement methods for Object.hashCode() and Object.toString() that resemble those used for the annotation values of an actual Annotation implementation. Also, instances must implement Object.equals(Object) to return true for other instances of this interface that represent the same annotation value.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static class 
    An abstract base implementation of a loaded annotation value.
  • Method Summary

    Modifier and Type
    Method
    Description
    Returns the state of the represented loaded annotation value.
    boolean
    Verifies if this loaded value represents the supplied loaded value.
    Resolves the value to the actual value of an annotation.
    <V> V
    resolve(Class<? extends V> type)
    Resolves the value to the actual value of an annotation.
  • Method Details

    • getState

      Returns the state of the represented loaded annotation value.
      Returns:
      The state represented by this instance.
    • resolve

      U resolve()
      Resolves the value to the actual value of an annotation. Calling this method might throw a runtime exception if this value is either not defined or not resolved.
      Returns:
      The actual annotation value represented by this instance.
    • resolve

      <V> V resolve(Class<? extends V> type)
      Resolves the value to the actual value of an annotation. Calling this method might throw a runtime exception if this value is either not defined or not resolved.
      Type Parameters:
      V - The value's loaded type.
      Parameters:
      type - The value's loaded type.
      Returns:
      The actual annotation value represented by this instance.
    • represents

      boolean represents(Object value)
      Verifies if this loaded value represents the supplied loaded value.
      Parameters:
      value - A loaded annotation value.
      Returns:
      true if the supplied annotation value is represented by this annotation value.