Class JDynamicInvokeExpr

java.lang.Object
sootup.core.jimple.common.expr.AbstractInvokeExpr
sootup.core.jimple.common.expr.JDynamicInvokeExpr
All Implemented Interfaces:
EquivTo, Value, Expr, Acceptor<ExprVisitor>

public final class JDynamicInvokeExpr extends AbstractInvokeExpr
  • Field Details

  • Constructor Details

    • JDynamicInvokeExpr

      public JDynamicInvokeExpr(@NonNull MethodSignature bootstrapMethodSignature, @NonNull List<Immediate> bootstrapArgs, @NonNull MethodSignature methodSignature, int tag, @NonNull List<Immediate> methodArgs)
      Assigns values returned by newImmediateBox to an array bsmArgBoxes of type ValueBox.
    • JDynamicInvokeExpr

      public JDynamicInvokeExpr(@NonNull MethodSignature bootstrapMethodSignature, @NonNull List<Immediate> bootstrapArgs, @NonNull MethodSignature methodSignature, @NonNull List<Immediate> methodArgs)
      Makes a parameterized call to JDynamicInvokeExpr method.
  • Method Details

    • getBootstrapMethodSignature

      public @NonNull MethodSignature getBootstrapMethodSignature()
    • getBootstrapArgCount

      public int getBootstrapArgCount()
    • getBootstrapArg

      public @NonNull Value getBootstrapArg(int index)
    • equivTo

      public boolean equivTo(Object o, @NonNull JimpleComparator comparator)
      Description copied from interface: EquivTo
      Returns true if this object is equivalent to o according to the given comparator.
    • equivHashCode

      public int equivHashCode()
      Returns a hash code for this object, consistent with structural equality.
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • toString

      public void toString(@NonNull StmtPrinter up)
    • accept

      public <V extends ExprVisitor> V accept(@NonNull V v)
      Description copied from interface: Acceptor
      Called when this object is visited.
    • getBootstrapArgs

      public @NonNull List<Immediate> getBootstrapArgs()
      Returns a list args of type Value.
    • getHandleTag

      public int getHandleTag()
    • withBootstrapMethodSignature

      public @NonNull JDynamicInvokeExpr withBootstrapMethodSignature(@NonNull MethodSignature bootstrapMethodSignature)
    • withBootstrapArgs

      public @NonNull JDynamicInvokeExpr withBootstrapArgs(@NonNull List<Immediate> bootstrapArgs)
    • withMethodSignature

      public @NonNull JDynamicInvokeExpr withMethodSignature(@NonNull MethodSignature methodSignature)
    • withMethodArgs

      public @NonNull JDynamicInvokeExpr withMethodArgs(@NonNull List<Immediate> methodArgs)