Interface MemberSubstitution.Substitution.Chain.Step

All Known Implementing Classes:
MemberSubstitution.Substitution.Chain.Step.ForArgumentLoading, MemberSubstitution.Substitution.Chain.Step.ForArgumentSubstitution, MemberSubstitution.Substitution.Chain.Step.ForAssignment, MemberSubstitution.Substitution.Chain.Step.ForDelegation, MemberSubstitution.Substitution.Chain.Step.ForField, MemberSubstitution.Substitution.Chain.Step.ForField.Read, MemberSubstitution.Substitution.Chain.Step.ForField.Write, MemberSubstitution.Substitution.Chain.Step.ForInvocation, MemberSubstitution.Substitution.Chain.Step.OfOriginalExpression, MemberSubstitution.Substitution.Chain.Step.Simple
Enclosing class:
MemberSubstitution.Substitution.Chain

public static interface MemberSubstitution.Substitution.Chain.Step
Represents a step of a substitution chain.
  • Method Details

    • resolve

      Resolves this step of a substitution chain.
      Parameters:
      receiver - The target result type of the substitution.
      original - The byte code element that is currently substituted.
      parameters - The parameters of the substituted element.
      result - The resulting type of the substituted element.
      methodHandle - A method handle of the stackManipulation invocation that is being substituted.
      stackManipulation - The byte code instruction that is being substituted.
      current - The current type of the applied substitution that is the top element on the operand stack.
      offsets - The arguments of the substituted byte code element mapped to their local variable offsets.
      freeOffset - The first free offset in the local variable array.
      Returns:
      A resolved substitution step for the supplied inputs.