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

## [Java] Interface AbstractFunctionalInterfaceWriter

-     public interface AbstractFunctionalInterfaceWriter

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

  Since:
    3.0.0

- - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `public ClassNode` | `convertParameterType(ClassNode targetType, ClassNode parameterType, ClassNode inferredType)`
    `` | `public ClassNode` | `convertParameterType(ClassNode parameterType, ClassNode inferredType)` deprecated: use convertParameterType(ClassNode, ClassNode, ClassNode) instead
    `` | `public org.objectweb.asm.Handle` | `createBootstrapMethod(boolean isInterface, boolean serializable)`
    `` | `public Object[]` | `createBootstrapMethodArguments(String abstractMethodDesc, int insn, ClassNode methodOwner, MethodNode methodNode, boolean serializable)`
    `` | `public Object[]` | `createBootstrapMethodArguments(String abstractMethodDesc, int insn, ClassNode methodOwner, MethodNode methodNode, Parameter[] parameters, boolean serializable)`
    `` | `public String` | `createMethodDescriptor(MethodNode abstractMethodNode)`
    `` | `public ClassNode` | `getFunctionalInterfaceType(Expression expression)`
    `` | `public Parameter` | `prependParameter(List<Parameter> parameterList, String parameterName, ClassNode parameterType)`

- - ### Method Detail

    - #### public ClassNode convertParameterType(ClassNode targetType, ClassNode parameterType, ClassNode inferredType)

    - #### @Deprecated
      public ClassNode convertParameterType(ClassNode parameterType, ClassNode inferredType)

      deprecated:
        use convertParameterType(ClassNode, ClassNode, ClassNode) instead

    - #### public org.objectweb.asm.Handle createBootstrapMethod(boolean isInterface, boolean serializable)

    - #### @Deprecated
      public Object[] createBootstrapMethodArguments(String abstractMethodDesc, int insn, ClassNode methodOwner, MethodNode methodNode, boolean serializable)

    - #### public Object[] createBootstrapMethodArguments(String abstractMethodDesc, int insn, ClassNode methodOwner, MethodNode methodNode, Parameter[] parameters, boolean serializable)

    - #### public String createMethodDescriptor(MethodNode abstractMethodNode)

    - #### public ClassNode getFunctionalInterfaceType(Expression expression)

    - #### public Parameter prependParameter(List<Parameter> parameterList, String parameterName, ClassNode parameterType)