# Class: com.pnfsoftware.jeb.core.units.code.asm.items.InstructionHints

Hints for concrete instruction items.

## Constructor: InstructionHints

Description: Create empty instruction hints.

## Method: getCallsitePrototype
- return type: `com.pnfsoftware.jeb.core.units.code.asm.type.IPrototypeItem`

Description: Get the prototype associated with a callsite target.
return: a prototype or null if none

## Method: getStackPointerDelta
- return type: `java.lang.Integer`

Description: Get the stack\-pointer delta after the execution of an instruction.
return: an integer or null if none

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

Description: Get value indicating whether branching instruction may be a switch dispatcher \(heuristic\).
return: 0:no, 1: yes, not processed, 2: yes, processed

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

Description: Determine whether the instruction is known to be an actual call.
return: true for an actual call

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

Description: Determine whether the instruction should be treated as a conditional tail call.
return: true for a conditional tail call

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

Description: Determine whether custom branching behavior is present.
return: true if any custom branching hint is set

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

Description: Determine whether the instruction is a fake call.
return: true if instruction is a routine call that should be considered as an intra\-routine         branch, false otherwise.

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

Description: Determine whether the instruction should be treated as a tail call.
return: true for a tail call

## Method: setActualCall
- parameter: `isActualCall`, type: `boolean`

Description: Set whether the instruction is known to be an actual call.
parameter: isActualCall: true for an actual call

## Method: setCallsitePrototype
- parameter: `callsiteProto`, type: `com.pnfsoftware.jeb.core.units.code.asm.type.IPrototypeItem`

Description: Set the prototype associated with a callsite target. Typically, this is used on branching instructions instructions to dynamic callsites that have not been determined automatically.
parameter: callsiteProto: a prototype; null to remove

## Method: setCondTailCall
- parameter: `isCondTailCall`, type: `boolean`

Description: Set whether the instruction should be treated as a conditional tail call.
parameter: isCondTailCall: true for a conditional tail call

## Method: setFakeCall
- parameter: `isFakeCall`, type: `boolean`

Description: Set whether the instruction is a fake call.
parameter: isFakeCall: true for a fake call

## Method: setStackPointerDelta
- parameter: `spDelta`, type: `java.lang.Integer`

Description: Set the stack\-pointer delta after the execution of an instruction. Typically, this is used on branching instructions to dynamic callsites that have not been determined automatically.
parameter: spDelta: a delta; null to remove

## Method: setSwitchDispatcher
- parameter: `switchDispatcher`, type: `int`

Description: Set whether the branching instruction may be a switch dispatcher.
parameter: switchDispatcher: 0:no, 1: yes, not processed, 2: yes, processed

## Method: setTailCall
- parameter: `isTailCall`, type: `boolean`

Description: Set whether the instruction should be treated as a tail call.
parameter: isTailCall: true for a tail call

