Class JCastExpr

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

public final class JCastExpr extends Object implements Expr
An expression that casts a value to a certain type.
  • Constructor Details

    • JCastExpr

      public JCastExpr(@NonNull Immediate op, @NonNull Type type)
  • Method Details

    • equivTo

      public boolean equivTo(@NonNull 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
    • getOp

      public Immediate getOp()
    • 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
    • getType

      public @NonNull Type 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
    • 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
    • withOp

      public @NonNull JCastExpr withOp(@NonNull Immediate op)
    • withType

      public @NonNull JCastExpr withType(@NonNull Type type)
    • isJCastExpr

      public boolean isJCastExpr()
      Specified by:
      isJCastExpr in interface Expr
    • asJCastExpr

      public JCastExpr asJCastExpr()
      Specified by:
      asJCastExpr in interface Expr
    • toJCastExpr

      public Optional<JCastExpr> toJCastExpr()
      Specified by:
      toJCastExpr in interface Expr