# Interface: com.pnfsoftware.jeb.core.units.code.asm.sig.INativeSignature

A native signature is composed of a collection of [INativeFeature](INativeFeature) identifying one or several native item\(s\) \-\- the target\(s\) \-\-, and a collection of [INativeAttribute](INativeAttribute) representing what is known about the target\(s\).

## Method: getAlternateNames
- return type: `java.util.List<java.lang.String>`

Description: Provides alternate names for the signature target\(s\). These are meaningful names, only used when the target name is itself meaningful.
return: list of alternate names, possibly null or empty

## Method: getAttributes
- return type: `java.util.List<com.pnfsoftware.jeb.core.units.code.asm.sig.INativeAttribute>`

Description: Provides the attributes associated with the signature target\(s\).
return: attributes of the target\(s\)

## Method: getConfidenceLevel
- return type: `com.pnfsoftware.jeb.core.units.code.asm.sig.INativeSignature.ConfidenceLevel`

Description: Provides the confidence level of this signature, see [ConfidenceLevel](ConfidenceLevel).
return: signature confidence level

## Method: getFlags
- return type: `com.pnfsoftware.jeb.core.units.code.asm.sig.NativeSignatureFlags`

Description: Provides signature flags.
return: signature flags

## Method: getPossibleNames
- return type: `java.util.List<java.lang.String>`

Description: Provides a series of meaningful names to use when a signature target name is meaningless.
return: list of possible names, possibly null or empty

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

Description: Provides the name of the signature target\(s\). The name might not be meaningful, e.g. when the signature has been created by merging several signatures, see [NativeSignatureFlags#hasMeaningfulTargetName()](NativeSignatureFlags#hasMeaningfulTargetName()).
return: signature target name

## Method: match
- parameter: `signature`, type: `com.pnfsoftware.jeb.core.units.code.asm.sig.INativeSignature`
- return type: `boolean`

Description: Check if this signature's features are all matched by one of the given signature's features. Note that the given signature do not need to be exactly equals to this one for this method to return true, see [#matchExactly(INativeSignature)](#matchExactly(INativeSignature)).
parameter: signature: signature to compare against
return: true if this signature's features are all matched by one feature of the given         signature, false otherwise

## Method: matchExactly
- parameter: `signature`, type: `com.pnfsoftware.jeb.core.units.code.asm.sig.INativeSignature`
- return type: `boolean`

Description: Exact match, i.e. both signatures have exactly the same features.
parameter: signature: signature to compare against
return: true if both signatures have exactly the same features

