# Interface: com.pnfsoftware.jeb.core.units.code.asm.type.IReferenceType
- Super interfaces: `com.pnfsoftware.jeb.core.units.code.asm.type.INativeType`

The reference type, or pointer type.

## Abstract Method: getMainType
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.INativeType`

Description: Get the main type.  

  Example: If this reference is a `int**` \(pointer to pointer to int\), then the main  type is `int`.
return: main type

## Abstract Method: getPointedType
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.INativeType`

Description: Get the pointed type. Same as [#getReferencedType()](#getReferencedType()).
return: pointed type

## Abstract Method: getReferenceCount
- return type: `int`

Description: Get the reference count.  

  Example: If this reference is a `int**` \(pointer to pointer to int\), then the  reference count is 2.
return: reference count

## Default Method: getReferencedType
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.INativeType`

Description: Get the referenced type. Example: If this reference is a `int**` \(pointer to pointer  to int\), then the referenced type is `int*` \(pointer to int\).
return: referenced type

