# Enum: com.pnfsoftware.jeb.core.units.code.asm.analyzer.ReferenceType

Native reference types attached to [IReference](IReference). References can be broadly categorized in two types: control\-flow and data\-flow references.

## Constant: BRANCH
Description: Source unconditionally branches on target

## Constant: COND_BRANCH
Description: Source conditionally branches on target

## Constant: DYNAMIC_BRANCH
Description: Source branches on target using a register indirection or a register/memory dereference

## Constant: GEN_CODE
Description: Generic code reference

## Constant: GEN_DATA
Description: Generic data reference

## Constant: PTR_DATA
Description: Source is a pointer to target

## Constant: READ_DATA
Description: Source reads target

## Constant: ROUTINE_CALL
Description: Source calls target as a routine

## Constant: UNKNOWN
Description: Unknown reference type.

## Constant: WRITE_DATA
Description: Source writes to target

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

Description: Get the short string code for this reference type.
return: short string code

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

Description: Determine whether this is a code reference type.
return: true for code reference types

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

Description: Determine whether this is a data reference type.
return: true for data reference types

## Static Method: valueOf
- parameter: `name`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.asm.analyzer.ReferenceType`


## Static Method: values
- return type: `com.pnfsoftware.jeb.core.units.code.asm.analyzer.ReferenceType[]`


