Class JGotoStmt

java.lang.Object
sootup.core.jimple.common.stmt.AbstractStmt
sootup.core.jimple.common.stmt.JGotoStmt
All Implemented Interfaces:
EquivTo, BranchingStmt, Stmt, Acceptor<StmtVisitor>

public class JGotoStmt extends AbstractStmt implements BranchingStmt
Unconditionally jumps to a target Stmt
  • Field Details

  • Constructor Details

  • Method Details

    • toString

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

      public void toString(@NonNull StmtPrinter stmtPrinter)
      Specified by:
      toString in interface Stmt
    • getTargetStmts

      public @NonNull List<Stmt> getTargetStmts(@NonNull Body body)
      Specified by:
      getTargetStmts in interface BranchingStmt
    • getExpectedSuccessorCount

      public int getExpectedSuccessorCount()
      Description copied from class: AbstractStmt
      Returns the amount of unexceptional successors the Stmt needs to have in the StmtGraph.
      Specified by:
      getExpectedSuccessorCount in interface Stmt
      Overrides:
      getExpectedSuccessorCount in class AbstractStmt
    • accept

      public <V extends StmtVisitor> V accept(@NonNull V v)
      Description copied from interface: Acceptor
      Called when this object is visited.
      Specified by:
      accept in interface Acceptor<StmtVisitor>
    • fallsThrough

      public boolean fallsThrough()
      Description copied from interface: Stmt
      Returns true if execution after this statement may continue at the following statement. (e.g. GotoStmt will return false and e.g. IfStmt will return true).
      Specified by:
      fallsThrough in interface Stmt
    • branches

      public boolean branches()
      Description copied from interface: Stmt
      Returns true if execution after this statement does not necessarily continue at the following statement. The BranchingStmt's GotoStmt, JSwitchStmt and IfStmt will return true.
      Specified by:
      branches in interface BranchingStmt
      Specified by:
      branches in interface Stmt
    • 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
    • equivHashCode

      public int equivHashCode()
      Description copied from interface: EquivTo
      Returns a (not necessarily fixed) hash code for this object. This hash code coincides with equivTo; it is undefined in the presence of mutable objects. The contract is defined in JimpleComparator.
      Specified by:
      equivHashCode in interface EquivTo
    • withPositionInfo

      public @NonNull JGotoStmt withPositionInfo(@NonNull StmtPositionInfo positionInfo)