# Interface: com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICConditionalStatement

Base class for CAST conditional statements \(if, switch\).

## Method: duplicate
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICConditionalStatement`


## Method: getBlocks
- return type: `java.util.List<com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICBlock>`

Description: Return a copy of the [ICBlock](ICBlock) conditional blocks with default block \(if it exists\).
return: 

## Method: getConditionalBlocks
- return type: `java.util.List<com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICBlock>`

Description: Return a copy of the [ICBlock](ICBlock) conditional blocks. The default block is not included.
return: 

## Method: getDefaultBlock
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICBlock`

Description: Return the default block, or null if no default block is defined
return: 

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

Description: Determine whether the conditional statement has a default block.
return: true if the conditional statement has an else block

## Method: setDefaultBlock
- parameter: `b`, type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICBlock`

Description: Set the default block of code.
parameter: b: optional block, set to null to remove the default block

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

Description: Return the number of blocks \(including default block\).
return: the number of blocks

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

Description: Return the number of blocks, NOT counting the default block if there is one.
return: 

