Annotation Type SuperCallHandle


  • @Documented
    @Retention(RUNTIME)
    @Target(PARAMETER)
    public @interface SuperCallHandle
    Parameters that are annotated with this annotation will be assigned a java.lang.invoke.MethodHandle invoking the super implementation.
    See Also:
    MethodDelegation, TargetMethodAnnotationDrivenBinder
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      boolean fallbackToDefault
      Determines if the method handle should invoke the default method to the intercepted method if a common super method invocation is not applicable.
      boolean nullIfImpossible
      Assigns null to the parameter if it is impossible to invoke the super method or a possible dominant default method, if permitted.
    • Element Detail

      • fallbackToDefault

        boolean fallbackToDefault
        Determines if the method handle should invoke the default method to the intercepted method if a common super method invocation is not applicable. For this to be possible, the default method must not be ambiguous.
        Returns:
        true if the invocation should fall back to invoking the default method.
        Default:
        true
      • nullIfImpossible

        boolean nullIfImpossible
        Assigns null to the parameter if it is impossible to invoke the super method or a possible dominant default method, if permitted.
        Returns:
        true if a null constant should be assigned to this parameter in case that a legal binding is impossible.
        Default:
        false