# Interface: com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEOperation

An IR operation. Built\-in operations have their operators defined in [OperationType](OperationType). Custom operations \(`functions`\) may be created as well.

## Method: getCountOfOperands
- return type: `int`

Description: 
return: the count of operands

## Method: getCustomOperationType
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.FunctionOptype`

Description: Retrieve the custom operation type, if the operation is [custom](OperationType#FUNCTION).
return: 

## Method: getOperand
- parameter: `index`, type: `int`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEGeneric`

Description: Retrieve an operand by index.
parameter: index: 0\-based index
return: null if the index is out\-of\-range

## Method: getOperand1
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEGeneric`

Description: Retrieve the first operand.
return: may be null

## Method: getOperand2
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEGeneric`

Description: Retrieve the second operand.
return: may be null

## Method: getOperands
- return type: `java.util.List<com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEGeneric>`

Description: Retrieve the list of operands.
return: 

## Method: getOperationName
- return type: `java.lang.String`

Description: Retrieve the actual operation name.
return: 

## Method: getOperationType
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.OperationType`

Description: Retrieve the operation type. If the operation is custom, use [#getCustomOperationType()](#getCustomOperationType()) to retrieve the actual function.
return: 

## Method: isCustomOperation
- return type: `boolean`

Description: Determine whether this IR is a custom operation.
return: 

## Method: isCustomOperation
- parameter: `opname`, type: `java.lang.String`
- return type: `boolean`

Description: Determine whether this IR is a custom operation with the provided name.
parameter: opname: 
return: 

