Package org.codehaus.groovy.classgen.asm.sc

# Interface AbstractFunctionalInterfaceWriter

All Known Implementing Classes:
  `StaticTypesLambdaWriter`, `StaticTypesMethodReferenceExpressionWriter`

    public interface AbstractFunctionalInterfaceWriter

Represents functional interface writer which contains some common methods to complete generating bytecode

Since:
  3.0.0

- ## Field Summary

  Fields
  Modifier and Type | Field | Description
  --- | --- | ---
  `static java.lang.String` | `ORIGINAL_PARAMETERS_WITH_EXACT_TYPE` | Deprecated.

- ## Method Summary

  Modifier and Type | Method | Description
  --- | --- | ---
  `default ClassNode` | `convertParameterType​(ClassNode parameterType, ClassNode inferredType)` |
  `default ClassNode` | `convertParameterType​(ClassNode targetType, ClassNode parameterType, ClassNode inferredType)` |
  `default org.objectweb.asm.Handle` | `createBootstrapMethod​(boolean isInterface, boolean serializable)` |
  `default java.lang.Object[]` | `createBootstrapMethodArguments​(java.lang.String abstractMethodDesc, int insn, ClassNode methodOwner, MethodNode methodNode, boolean serializable)` | Deprecated.
  `default java.lang.Object[]` | `createBootstrapMethodArguments​(java.lang.String abstractMethodDesc, int insn, ClassNode methodOwner, MethodNode methodNode, Parameter[] parameters, boolean serializable)` |
  `default java.lang.String` | `createMethodDescriptor​(MethodNode abstractMethodNode)` |
  `default ClassNode` | `getFunctionalInterfaceType​(Expression expression)` |
  `default Parameter` | `prependParameter​(java.util.List<Parameter> parameterList, java.lang.String parameterName, ClassNode parameterType)` |

- ## Field Details

  - ### ORIGINAL_PARAMETERS_WITH_EXACT_TYPE

    @Deprecated static final java.lang.String ORIGINAL_PARAMETERS_WITH_EXACT_TYPE
    Deprecated.
    See Also:
      Constant Field Values

- ## Method Details

  - ### getFunctionalInterfaceType

    default ClassNode getFunctionalInterfaceType​(Expression expression)

  - ### createMethodDescriptor

    default java.lang.String createMethodDescriptor​(MethodNode abstractMethodNode)

  - ### createBootstrapMethod

    default org.objectweb.asm.Handle createBootstrapMethod​(boolean isInterface, boolean serializable)

  - ### createBootstrapMethodArguments

    @Deprecated default java.lang.Object[] createBootstrapMethodArguments​(java.lang.String abstractMethodDesc, int insn, ClassNode methodOwner, MethodNode methodNode, boolean serializable)
    Deprecated.

  - ### createBootstrapMethodArguments

    default java.lang.Object[] createBootstrapMethodArguments​(java.lang.String abstractMethodDesc, int insn, ClassNode methodOwner, MethodNode methodNode, Parameter[] parameters, boolean serializable)

  - ### convertParameterType

    default ClassNode convertParameterType​(ClassNode parameterType, ClassNode inferredType)

  - ### convertParameterType

    default ClassNode convertParameterType​(ClassNode targetType, ClassNode parameterType, ClassNode inferredType)

  - ### prependParameter

    default Parameter prependParameter​(java.util.List<Parameter> parameterList, java.lang.String parameterName, ClassNode parameterType)