Interface InvokeDynamic.InvocationProvider

  • All Known Implementing Classes:
    InvokeDynamic.InvocationProvider.Default
    Enclosing class:
    InvokeDynamic

    protected static interface InvokeDynamic.InvocationProvider
    An invocation provider is responsible for loading the arguments of the invoked method onto the operand stack and for creating the actual invoke dynamic instruction.
    • Method Detail

      • appendArguments

        InvokeDynamic.InvocationProvider appendArguments​(java.util.List<InvokeDynamic.InvocationProvider.ArgumentProvider> argumentProviders)
        Appends the given arguments to the invocation to be loaded onto the operand stack.
        Parameters:
        argumentProviders - The next arguments to be loaded onto the operand stack.
        Returns:
        An invocation provider for this target that loads the given arguments onto the operand stack.
      • appendArgument

        InvokeDynamic.InvocationProvider appendArgument​(InvokeDynamic.InvocationProvider.ArgumentProvider argumentProvider)
        Appends the given argument to the invocation to be loaded onto the operand stack.
        Parameters:
        argumentProvider - The next argument to be loaded onto the operand stack.
        Returns:
        An invocation provider for this target that loads the given arguments onto the operand stack.
      • withoutArguments

        InvokeDynamic.InvocationProvider withoutArguments()
        Returns a copy of this invocation provider that does not add any arguments.
        Returns:
        A copy of this invocation provider that does not add any arguments.
      • prepare

        InstrumentedType prepare​(InstrumentedType instrumentedType)
        Prepares the instrumented type.
        Parameters:
        instrumentedType - The instrumented type to prepare.
        Returns:
        The prepared instrumented type.