public class

EBranchDetails

extends Object
implements IEBranchDetails
java.lang.Object
   ↳ com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.EBranchDetails

Class Overview

Describe the side effects of a raw PC assignment. Used as a placeholder until a IECall resolution is successful. Also used for non "call to sub" PC-assignments, to specify additional targets, eg, potential targets of an indirect intra-procedural jump.

Summary

Public Constructors
EBranchDetails(List<IEVar> def, List<IEVar> use, List<IEVar> spoiled, int stackPointerDelta, IPrototypeItem nativePrototypeHint, List<IBranchTarget> dynamicTargetCandidates)
EBranchDetails()
EBranchDetails(IEBranchDetails v)
Copy constructor.
Public Methods
void addCandidate(int index, IBranchTarget candidate)
void addCandidate(IBranchTarget candidate)
void addCandidates(List<? extends IBranchTarget> candidates)
boolean equals(Object obj)
List<IEVar> getDef()
List<IBranchTarget> getDynamicTargetCandidates()
IPrototypeItem getNativePrototypeHint()
PreRoutineInvocationDetails getPreInvocationDetails()
List<IEVar> getSpoiled()
SPDC getStackPointerDelta()
SPDDeterminer getStackPointerDeltaDeterminer()
int getStackPointerDeltaValue()
List<IEVar> getUse()
int hashCode()
boolean isIncludeUnknownTarget()
void setIncludeUnknownTarget(boolean includeUnknownTarget)
void setNativePrototypeHint(IPrototypeItem nativePrototypeHint)
void setPreInvocationDetails(PreRoutineInvocationDetails preInvocationDetails)
String toString()
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.pnfsoftware.jeb.core.units.code.asm.decompiler.ir.IEBranchDetails

Public Constructors

public EBranchDetails (List<IEVar> def, List<IEVar> use, List<IEVar> spoiled, int stackPointerDelta, IPrototypeItem nativePrototypeHint, List<IBranchTarget> dynamicTargetCandidates)

Parameters
stackPointerDelta initial (fallback) SP-delta value, recorded with unknown guarantee and origin
nativePrototypeHint optional; if provided, can take precedence over stackPointerDelta
dynamicTargetCandidates optional; if provided, can take precedence over nativePrototypeHint

public EBranchDetails ()

public EBranchDetails (IEBranchDetails v)

Copy constructor.

Public Methods

public void addCandidate (int index, IBranchTarget candidate)

public void addCandidate (IBranchTarget candidate)

public void addCandidates (List<? extends IBranchTarget> candidates)

public boolean equals (Object obj)

public List<IEVar> getDef ()

public List<IBranchTarget> getDynamicTargetCandidates ()

public IPrototypeItem getNativePrototypeHint ()

public PreRoutineInvocationDetails getPreInvocationDetails ()

public List<IEVar> getSpoiled ()

public SPDC getStackPointerDelta ()

public SPDDeterminer getStackPointerDeltaDeterminer ()

public int getStackPointerDeltaValue ()

public List<IEVar> getUse ()

public int hashCode ()

public boolean isIncludeUnknownTarget ()

public void setIncludeUnknownTarget (boolean includeUnknownTarget)

public void setNativePrototypeHint (IPrototypeItem nativePrototypeHint)

public void setPreInvocationDetails (PreRoutineInvocationDetails preInvocationDetails)

public String toString ()