Class HeapInvocationBuffer.DefaultEncoder

    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int getBufferSize​(CallContext callContext)
      Gets the size in bytes of the buffer required for the function
      int putAddress​(byte[] buffer, int offset, long value)
      Encodes a native memory address value into the byte array.
      int putByte​(byte[] buffer, int offset, int value)
      Encodes a byte value into the byte array.
      int putDouble​(byte[] buffer, int offset, double value)
      Encodes a double value into the byte array.
      int putFloat​(byte[] buffer, int offset, float value)
      Encodes a float value into the byte array.
      int putInt​(byte[] buffer, int offset, int value)
      Encodes an int value into the byte array.
      int putLong​(byte[] buffer, int offset, long value)
      Encodes a long value into the byte array.
      int putShort​(byte[] buffer, int offset, int value)
      Encodes a short value into the byte array.
      int skipAddress​(int offset)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • putByte

        public final int putByte​(byte[] buffer,
                                 int offset,
                                 int value)
        Description copied from class: HeapInvocationBuffer.Encoder
        Encodes a byte value into the byte array.
        Specified by:
        putByte in class HeapInvocationBuffer.Encoder
        Parameters:
        buffer - The destination byte buffer to place the encoded value.
        offset - The offset within the destination buffer to place the value.
        value - The value to encode.
        Returns:
        The number of bytes consumed in encoding the value.
      • putShort

        public final int putShort​(byte[] buffer,
                                  int offset,
                                  int value)
        Description copied from class: HeapInvocationBuffer.Encoder
        Encodes a short value into the byte array.
        Specified by:
        putShort in class HeapInvocationBuffer.Encoder
        Parameters:
        buffer - The destination byte buffer to place the encoded value.
        offset - The offset within the destination buffer to place the value.
        value - The value to encode.
        Returns:
        The number of bytes consumed in encoding the value.
      • putInt

        public final int putInt​(byte[] buffer,
                                int offset,
                                int value)
        Description copied from class: HeapInvocationBuffer.Encoder
        Encodes an int value into the byte array.
        Specified by:
        putInt in class HeapInvocationBuffer.Encoder
        Parameters:
        buffer - The destination byte buffer to place the encoded value.
        offset - The offset within the destination buffer to place the value.
        value - The value to encode.
        Returns:
        The number of bytes consumed in encoding the value.
      • putLong

        public final int putLong​(byte[] buffer,
                                 int offset,
                                 long value)
        Description copied from class: HeapInvocationBuffer.Encoder
        Encodes a long value into the byte array.
        Specified by:
        putLong in class HeapInvocationBuffer.Encoder
        Parameters:
        buffer - The destination byte buffer to place the encoded value.
        offset - The offset within the destination buffer to place the value.
        value - The value to encode.
        Returns:
        The number of bytes consumed in encoding the value.
      • putFloat

        public final int putFloat​(byte[] buffer,
                                  int offset,
                                  float value)
        Description copied from class: HeapInvocationBuffer.Encoder
        Encodes a float value into the byte array.
        Specified by:
        putFloat in class HeapInvocationBuffer.Encoder
        Parameters:
        buffer - The destination byte buffer to place the encoded value.
        offset - The offset within the destination buffer to place the value.
        value - The value to encode.
        Returns:
        The number of bytes consumed in encoding the value.
      • putDouble

        public final int putDouble​(byte[] buffer,
                                   int offset,
                                   double value)
        Description copied from class: HeapInvocationBuffer.Encoder
        Encodes a double value into the byte array.
        Specified by:
        putDouble in class HeapInvocationBuffer.Encoder
        Parameters:
        buffer - The destination byte buffer to place the encoded value.
        offset - The offset within the destination buffer to place the value.
        value - The value to encode.
        Returns:
        The number of bytes consumed in encoding the value.
      • putAddress

        public final int putAddress​(byte[] buffer,
                                    int offset,
                                    long value)
        Description copied from class: HeapInvocationBuffer.Encoder
        Encodes a native memory address value into the byte array.
        Specified by:
        putAddress in class HeapInvocationBuffer.Encoder
        Parameters:
        buffer - The destination byte buffer to place the encoded value.
        offset - The offset within the destination buffer to place the value.
        value - The value to encode.
        Returns:
        The number of bytes consumed in encoding the value.