Class JNewExpr

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

public final class JNewExpr extends Object implements Expr
An expression that creates a new instance of a class.
  • Constructor Details

    • JNewExpr

      public JNewExpr(@NonNull ClassType type)
  • Method Details

    • 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.
      Specified by:
      equivTo in interface EquivTo
      Parameters:
      o - the object to compare with
      comparator - the comparator defining the equivalence relation
      Returns:
      true if this object is structurally equivalent to o under the given comparator
    • equivHashCode

      public int equivHashCode()
      Returns a hash code for this object, consistent with structural equality.
      Specified by:
      equivHashCode in interface EquivTo
      Returns:
      a structural hash code consistent with equivTo
    • toString

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

      public void toString(@NonNull StmtPrinter up)
      Description copied from interface: Value
      Appends a string representation of this value to the given printer.
      Specified by:
      toString in interface Value
    • getType

      public @NonNull ClassType getType()
      Description copied from interface: Value
      Returns the Soot type of this Value.
      Specified by:
      getType in interface Value
      Returns:
      the type of this value
    • collectUses

      public void collectUses(List<Value> collector)
      Description copied from interface: Value
      Collects all values used by this value into the given list.
      Specified by:
      collectUses in interface Value
    • accept

      public <V extends ExprVisitor> V accept(@NonNull V v)
      Description copied from interface: Acceptor
      Called when this object is visited.
      Specified by:
      accept in interface Acceptor<ExprVisitor>
      Type Parameters:
      V - the concrete visitor type
      Parameters:
      v - the visitor processing this object
      Returns:
      the visitor after processing
    • withType

      public @NonNull JNewExpr withType(@NonNull ClassType type)
    • isJNewExpr

      public boolean isJNewExpr()
      Specified by:
      isJNewExpr in interface Expr
    • asJNewExpr

      public JNewExpr asJNewExpr()
      Specified by:
      asJNewExpr in interface Expr
    • toJNewExpr

      public Optional<JNewExpr> toJNewExpr()
      Specified by:
      toJNewExpr in interface Expr