Package ghidra.app.plugin.processors.sleigh.template

# Class ConstTpl

java.lang.Object
ghidra.app.plugin.processors.sleigh.template.ConstTpl

public class ConstTpl extends Object
A placeholder for what will resolve to a field of a Varnode (an AddressSpace or integer offset or integer size) given a particular InstructionContext

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final long[]`
  `calc_mask`
  `static final int`
  `HANDLE`
  `static final int`
  `J_CURSPACE`
  `static final int`
  `J_CURSPACE_SIZE`
  `static final int`
  `J_FLOWDEST`
  `static final int`
  `J_FLOWDEST_SIZE`
  `static final int`
  `J_FLOWREF`
  `static final int`
  `J_FLOWREF_SIZE`
  `static final int`
  `J_NEXT`
  `static final int`
  `J_NEXT2`
  `static final int`
  `J_RELATIVE`
  `static final int`
  `J_START`
  `static final int`
  `REAL`
  `static final int`
  `SPACEID`
  `static final int`
  `V_OFFSET`
  `static final int`
  `V_OFFSET_PLUS`
  `static final int`
  `V_SIZE`
  `static final int`
  `V_SPACE`

- ## Constructor Summary

  Constructors
  Modifier
  Constructor
  Description
  `protected`
  `ConstTpl()`
  ``
  `ConstTpl(int tp)`
  ``
  `ConstTpl(int tp, int ht, int vf)`
  ``
  `ConstTpl(int tp, long val)`
  ``
  `ConstTpl(int tp, long val, AddressSpace spc, int ht, int sel)`
  ``
  `ConstTpl(ConstTpl op2)`
  ``
  `ConstTpl(AddressSpace spc)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `decode(Decoder decoder)`
  `void`
  `fillinOffset(FixedHandle hand, ParserWalker walker)`
  Fillin the offset portion of a FixedHandle based on this const.
  `void`
  `fillinSpace(FixedHandle hand, ParserWalker walker)`
  Fill in the space portion of a FixedHandle, based on this const.
  `long`
  `fix(ParserWalker walker)`
  `AddressSpace`
  `fixSpace(ParserWalker walker)`
  `int`
  `getHandleIndex()`
  `long`
  `getReal()`
  `int`
  `getSelect()`
  `AddressSpace`
  `getSpaceId()`
  `int`
  `getType()`
  `boolean`
  `isConstSpace()`
  `boolean`
  `isUniqueSpace()`
  `String`
  `toString()`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- ## Field Details

  - ### REAL

    public static final int REAL
    See Also:
      - Constant Field Values

  - ### HANDLE

    public static final int HANDLE
    See Also:
      - Constant Field Values

  - ### J_START

    public static final int J_START
    See Also:
      - Constant Field Values

  - ### J_NEXT

    public static final int J_NEXT
    See Also:
      - Constant Field Values

  - ### J_NEXT2

    public static final int J_NEXT2
    See Also:
      - Constant Field Values

  - ### J_CURSPACE

    public static final int J_CURSPACE
    See Also:
      - Constant Field Values

  - ### J_CURSPACE_SIZE

    public static final int J_CURSPACE_SIZE
    See Also:
      - Constant Field Values

  - ### SPACEID

    public static final int SPACEID
    See Also:
      - Constant Field Values

  - ### J_RELATIVE

    public static final int J_RELATIVE
    See Also:
      - Constant Field Values

  - ### J_FLOWREF

    public static final int J_FLOWREF
    See Also:
      - Constant Field Values

  - ### J_FLOWREF_SIZE

    public static final int J_FLOWREF_SIZE
    See Also:
      - Constant Field Values

  - ### J_FLOWDEST

    public static final int J_FLOWDEST
    See Also:
      - Constant Field Values

  - ### J_FLOWDEST_SIZE

    public static final int J_FLOWDEST_SIZE
    See Also:
      - Constant Field Values

  - ### V_SPACE

    public static final int V_SPACE
    See Also:
      - Constant Field Values

  - ### V_OFFSET

    public static final int V_OFFSET
    See Also:
      - Constant Field Values

  - ### V_SIZE

    public static final int V_SIZE
    See Also:
      - Constant Field Values

  - ### V_OFFSET_PLUS

    public static final int V_OFFSET_PLUS
    See Also:
      - Constant Field Values

  - ### calc_mask

    public static final long[] calc_mask

- ## Constructor Details

  - ### ConstTpl

    protected ConstTpl()

  - ### ConstTpl

    public ConstTpl(ConstTpl op2)

  - ### ConstTpl

    public ConstTpl(int tp, long val)

  - ### ConstTpl

    public ConstTpl(int tp)

  - ### ConstTpl

    public ConstTpl(AddressSpace spc)

  - ### ConstTpl

    public ConstTpl(int tp, int ht, int vf)

  - ### ConstTpl

    public ConstTpl(int tp, long val, AddressSpace spc, int ht, int sel)

- ## Method Details

  - ### isConstSpace

    public boolean isConstSpace()

  - ### isUniqueSpace

    public boolean isUniqueSpace()

  - ### getReal

    public long getReal()

  - ### getSpaceId

    public AddressSpace getSpaceId()

  - ### getHandleIndex

    public int getHandleIndex()

  - ### getSelect

    public int getSelect()

  - ### getType

    public int getType()

  - ### fix

    public long fix(ParserWalker walker)

  - ### fixSpace

    public AddressSpace fixSpace(ParserWalker walker) throws SleighException
    Throws:
      `SleighException`

  - ### fillinSpace

    public void fillinSpace(FixedHandle hand, ParserWalker walker)
    Fill in the space portion of a FixedHandle, based on this const.
    Parameters:
      `hand` - handle to fillin
      `walker` - current parser walker

  - ### fillinOffset

    public void fillinOffset(FixedHandle hand, ParserWalker walker)
    Fillin the offset portion of a FixedHandle based on this const. If the offset value is dynamic, fill in the handle appropriately. We don't just fill in the temporary variable offset, like "fix". Assume that hand.space is already filled in
    Parameters:
      `hand` - handle to fillin
      `walker` - current parser walker

  - ### decode

    public void decode(Decoder decoder) throws DecoderException
    Throws:
      `DecoderException`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`