Package ghidra.pcode.emu.jit.gen.type

# Enum Class DoubleReadGen

java.lang.Object
java.lang.Enum<DoubleReadGen>
ghidra.pcode.emu.jit.gen.type.DoubleReadGen

All Implemented Interfaces:
  `TypedAccessGen`, `Serializable`, `Comparable<DoubleReadGen>`, `Constable`

public enum DoubleReadGen extends Enum<DoubleReadGen> implements TypedAccessGen
The generator for reading doubles

This is accomplished by reading a long and then converting it.

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `BE`
  The big-endian instance
  `LE`
  The little-endian instance

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `generateCode(JitCodeGenerator gen, Varnode vn, org.objectweb.asm.MethodVisitor rv)`
  Emit code to access a varnode.
  `static DoubleReadGen`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static DoubleReadGen[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

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

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOf`

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

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### BE

    public static final DoubleReadGen BE
    The big-endian instance

  - ### LE

    public static final DoubleReadGen LE
    The little-endian instance

- ## Method Details

  - ### values

    public static DoubleReadGen[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static DoubleReadGen valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum class has no constant with the specified name
      `NullPointerException` - if the argument is null

  - ### generateCode

    public void generateCode(JitCodeGenerator gen, Varnode vn, org.objectweb.asm.MethodVisitor rv)
    Description copied from interface: `TypedAccessGen`
    Emit code to access a varnode.

    If reading, the result is placed on the JVM stack. If writing, the value is popped from the JVM stack.

    If the varnode fits completely in the block (the common case), then this accesses the bytes from the one block, using the method chosen by size. If the varnode extends into the next block, then this will split the varnode into two portions according to machine byte order. Each portion is accessed using the method for the size of that portion. If reading, the results are reassembled into a single value and pushed onto the JVM stack.

    Specified by:
      `generateCode` in interface `TypedAccessGen`
    Parameters:
      `gen` - the code generator
      `vn` - the varnode
      `rv` - the method visitor