public interface

IDPredicate

implements IDOperation
com.pnfsoftware.jeb.core.units.code.android.ir.IDPredicate

Class Overview

Special operation typed as boolean and used as conditions for IR_JCOND instructions.

Summary

[Expand]
Inherited Constants
From interface com.pnfsoftware.jeb.core.units.code.android.ir.IDElement
Public Methods
abstract IDPredicate duplicate()
Duplicate this element.
abstract boolean isFalse()
Determine whether this predicate is trivially false.
abstract boolean isTrue()
Determine whether this predicate is trivially true.
abstract void reverse()
Reverse this predicate.
abstract boolean reverseAttempt()
Attempt to reverse this predicate.
[Expand]
Inherited Methods
From interface com.pnfsoftware.jeb.core.units.code.IInstructionOperand
From interface com.pnfsoftware.jeb.core.units.code.android.ir.IDElement
From interface com.pnfsoftware.jeb.core.units.code.android.ir.IDExpression
From interface com.pnfsoftware.jeb.core.units.code.android.ir.IDOperation

Public Methods

public abstract IDPredicate duplicate ()

Duplicate this element.

Returns
  • a deep copy of this element; the type of the duplicated element should be the same as this element's type

public abstract boolean isFalse ()

Determine whether this predicate is trivially false.

Returns
  • true if the predicate is guaranteed to be false; otherwise, the method returns false, indicating the value of the predicate is not trivial (it may be true or false)

public abstract boolean isTrue ()

Determine whether this predicate is trivially true.

Returns
  • true if the predicate is guaranteed to be true; otherwise, the method returns false, indicating the value of the predicate is not trivial (it may be true or false)

public abstract void reverse ()

Reverse this predicate. On failure, this method throws.

public abstract boolean reverseAttempt ()

Attempt to reverse this predicate. Example: a==b is reversed to a!=b; a>=b is reversed to a<b, etc.

Returns
  • success indicator