All Superinterfaces:
IEGeneric, IInstructionOperand

@Ser public interface IEOperation extends IEGeneric
An IR operation. Built-in operations have their operators defined in OperationType. Custom operations (functions) may be created as well.
See Also:
  • Method Details

    • getOperationName

      String getOperationName()
      Retrieve the actual operation name.
      Returns:
    • getCountOfOperands

      int getCountOfOperands()
      Returns:
      the count of operands
    • getOperand1

      IEGeneric getOperand1()
      Retrieve the first operand.
      Returns:
      may be null
    • getOperand2

      IEGeneric getOperand2()
      Retrieve the second operand.
      Returns:
      may be null
    • getOperand

      IEGeneric getOperand(int index)
      Retrieve an operand by index.
      Parameters:
      index - 0-based index
      Returns:
      null if the index is out-of-range
    • getOperands

      List<IEGeneric> getOperands()
      Retrieve the list of operands.
      Returns:
    • getOperationType

      OperationType getOperationType()
      Retrieve the operation type. If the operation is custom, use getCustomOperationType() to retrieve the actual function.
      Returns:
    • getCustomOperationType

      FunctionOptype getCustomOperationType()
      Retrieve the custom operation type, if the operation is custom.
      Returns:
    • isCustomOperation

      default boolean isCustomOperation()
      Determine whether this IR is a custom operation.
      Returns:
    • isCustomOperation

      default boolean isCustomOperation(String opname)
      Determine whether this IR is a custom operation with the provided name.
      Parameters:
      opname -
      Returns: