# Interface: com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICConstant
- Type Parameter: T extends `java.lang.Object`

- Super interfaces: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICExpression`

Top\-level C AST interface to represent a literal or constant value. Constants represent immutable  numbers and strings. Refer to the sub\-interfaces. Constant objects are created and retrieved by a  [factory](com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICConstantFactory.md).

## Abstract Method: duplicate
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICConstant<T>`

Description: This method returns the object itself: constants are generally immutable and do not need to  be duplicated in the general case. However, if they need to be duplicated, you may use the  method `duplicate2`, if the interface offers it.

## Abstract Method: getOrigin
- return type: `java.lang.String`


## Abstract Method: getType
- return type: `com.pnfsoftware.jeb.core.units.code.asm.decompiler.ast.ICType`


## Abstract Method: getValue
- return type: `T`


## Abstract Method: isTrueLike
- return type: `boolean`


## Abstract Method: setOrigin
- parameter: `origin`, type: `java.lang.String`


