public class

AssemblyItem

extends TextItem
java.lang.Object
   ↳ com.pnfsoftware.jeb.core.output.text.impl.TextItem
     ↳ com.pnfsoftware.jeb.core.output.code.AssemblyItem

Class Overview

Class for code items. Code items are generated by CodeDocument, which are reserved for ICodeUnits. IDs of code items have a special format: the upper-8 bits are used to specify the type of the item. Negative items (those whose upper 8-bits will be 1xxxxxxx) are using reserved types, in the range 0x80-0xFF. When using a well-known type, getItemObject() should return an adequate object, as specified by the contract.

Well-known item types:

  • 0x81: address - the item object should be a Long representing the address
  • 0x82: register - the item object should be a Long whose lower 32-bit are an Integer, representing an index into an IRegisterBank
  • 0x83: mnemonic - TO BE DEFINED, DO NOT USE

Summary

Constants
long ITEM_TYPE_ADDRESS Identifier for address items
long ITEM_TYPE_CLASS
long ITEM_TYPE_DATA Identifier for data objects
long ITEM_TYPE_FIELD Identifier for field objects; do not confuse with ITEM_TYPE_STRUCTFIELD.
long ITEM_TYPE_IDENT
long ITEM_TYPE_IMMEDIATE Identifier for immediate items
long ITEM_TYPE_LOCAL Identifier for local variable items
long ITEM_TYPE_METHOD Identifier for method/routine/function objects
long ITEM_TYPE_MNEMONIC Identifier for mnemonic items
long ITEM_TYPE_REGISTER Identifier for register items
long ITEM_TYPE_STRUCTFIELD Identifier for structures' fields
long ITEM_TYPE_TYPE Identifier for types
[Expand]
Inherited Constants
From interface com.pnfsoftware.jeb.core.output.IActionableItem
Public Constructors
AssemblyItem(int offset, int length)
AssemblyItem(int offset, int length, ItemClassIdentifiers classId, long itemId, int flags)
[Expand]
Inherited Methods
From class com.pnfsoftware.jeb.core.output.text.impl.TextItem
From class java.lang.Object
From interface com.pnfsoftware.jeb.core.output.IActionableItem
From interface com.pnfsoftware.jeb.core.output.IVisualItem
From interface com.pnfsoftware.jeb.core.output.text.ITextItem

Constants

public static final long ITEM_TYPE_ADDRESS

Identifier for address items

Constant Value: -9151314442816847872 (0x8100000000000000)

public static final long ITEM_TYPE_CLASS

Constant Value: -8430738502437568512 (0x8b00000000000000)

public static final long ITEM_TYPE_DATA

Identifier for data objects

Constant Value: -8574853690513424384 (0x8900000000000000)

public static final long ITEM_TYPE_FIELD

Identifier for field objects; do not confuse with ITEM_TYPE_STRUCTFIELD.

Constant Value: -8358680908399640576 (0x8c00000000000000)

public static final long ITEM_TYPE_IDENT

Constant Value: -8502796096475496448 (0x8a00000000000000)

public static final long ITEM_TYPE_IMMEDIATE

Identifier for immediate items

Constant Value: -8935141660703064064 (0x8400000000000000)

public static final long ITEM_TYPE_LOCAL

Identifier for local variable items

Constant Value: -8863084066665136128 (0x8500000000000000)

public static final long ITEM_TYPE_METHOD

Identifier for method/routine/function objects

Constant Value: -8718968878589280256 (0x8700000000000000)

public static final long ITEM_TYPE_MNEMONIC

Identifier for mnemonic items

Constant Value: -9007199254740992000 (0x8300000000000000)

public static final long ITEM_TYPE_REGISTER

Identifier for register items

Constant Value: -9079256848778919936 (0x8200000000000000)

public static final long ITEM_TYPE_STRUCTFIELD

Identifier for structures' fields

Constant Value: -8646911284551352320 (0x8800000000000000)

public static final long ITEM_TYPE_TYPE

Identifier for types

Constant Value: -8791026472627208192 (0x8600000000000000)

Public Constructors

public AssemblyItem (int offset, int length)

public AssemblyItem (int offset, int length, ItemClassIdentifiers classId, long itemId, int flags)