test_class.declarator: fooBarBytes = new byte[]{
        0, 0, 0, 2,                // array length
        0, 0, 0, 3, 'f', 'o', 'o', // "foo", encoded with length
        0, 0, 0, 3, 'b', 'a', 'r'  // "bar", encoded with length
    }
test_class.modifier: private static final
test_class.original_string: private static final byte[] fooBarBytes = new byte[]{
        0, 0, 0, 2,                // array length
        0, 0, 0, 3, 'f', 'o', 'o', // "foo", encoded with length
        0, 0, 0, 3, 'b', 'a', 'r'  // "bar", encoded with length
    };
test_class.type: byte[]
test_class.var_name: fooBarBytes
test_class.declarator: grinningEmoji = "😁";
test_class.modifier: private static final
test_class.original_string: private static final String grinningEmoji = "😁";
test_class.type: String
test_class.var_name: grinningEmoji
test_class.file: api/src/test/java/edu/wpi/first/shuffleboard/api/sources/recording/SerializationTest.java
test_class.identifier: SerializationTest
test_case.body: @Test
    public void testLongToBytes() {
      final long val = Long.MAX_VALUE;
      byte[] bytes = Serialization.toByteArray(val);
      assertArrayEquals(
          new byte[]{0x7F, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF},
          bytes);
    }
test_case.class_method_signature: SerializationTest.testLongToBytes()
test_case.full_signature: @Test public void testLongToBytes()
test_case.identifier: testLongToBytes
test_case.invocations: toByteArray assertArrayEquals
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testLongToBytes()
focal_class.declarator: log = Logger.getLogger(Serialization.class.getName())
focal_class.modifier: private static final
focal_class.original_string: private static final Logger log = Logger.getLogger(Serialization.class.getName());
focal_class.type: Logger
focal_class.var_name: log
focal_class.declarator: MAGIC_NUMBER = 0xBEEF_FACE
focal_class.modifier: public static final
focal_class.original_string: public static final int MAGIC_NUMBER = 0xBEEF_FACE;
focal_class.type: int
focal_class.var_name: MAGIC_NUMBER
focal_class.declarator: VERSION = 4
focal_class.modifier: public static final
focal_class.original_string: public static final int VERSION = 4;
focal_class.type: int
focal_class.var_name: VERSION
focal_class.declarator: SIZE_OF_BYTE = 1
focal_class.modifier: public static final
focal_class.original_string: public static final int SIZE_OF_BYTE = 1;
focal_class.type: int
focal_class.var_name: SIZE_OF_BYTE
focal_class.declarator: SIZE_OF_BOOL = 1
focal_class.modifier: public static final
focal_class.original_string: public static final int SIZE_OF_BOOL = 1;
focal_class.type: int
focal_class.var_name: SIZE_OF_BOOL
focal_class.declarator: SIZE_OF_SHORT = 2
focal_class.modifier: public static final
focal_class.original_string: public static final int SIZE_OF_SHORT = 2;
focal_class.type: int
focal_class.var_name: SIZE_OF_SHORT
focal_class.declarator: SIZE_OF_INT = 4
focal_class.modifier: public static final
focal_class.original_string: public static final int SIZE_OF_INT = 4;
focal_class.type: int
focal_class.var_name: SIZE_OF_INT
focal_class.declarator: SIZE_OF_LONG = 8
focal_class.modifier: public static final
focal_class.original_string: public static final int SIZE_OF_LONG = 8;
focal_class.type: int
focal_class.var_name: SIZE_OF_LONG
focal_class.declarator: SIZE_OF_DOUBLE = 8
focal_class.modifier: public static final
focal_class.original_string: public static final int SIZE_OF_DOUBLE = 8;
focal_class.type: int
focal_class.var_name: SIZE_OF_DOUBLE
focal_class.file: api/src/main/java/edu/wpi/first/shuffleboard/api/sources/recording/Serialization.java
focal_class.identifier: Serialization
focal_class.class_method_signature: Serialization.Serialization()
focal_class.full_signature: private  Serialization()
focal_class.identifier: Serialization
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.signature:  Serialization()
focal_class.class_method_signature: Serialization.saveRecording(Recording recording, Path file)
focal_class.full_signature: public static void saveRecording(Recording recording, Path file)
focal_class.identifier: saveRecording
focal_class.modifiers: public static
focal_class.parameters: (Recording recording, Path file)
focal_class.return: void
focal_class.signature: void saveRecording(Recording recording, Path file)
focal_class.class_method_signature: Serialization.updateRecordingSave(Recording recording, Path file)
focal_class.full_signature: @SuppressWarnings("PMD.ExcessiveMethodLength") public static void updateRecordingSave(Recording recording, Path file)
focal_class.identifier: updateRecordingSave
focal_class.modifiers: @SuppressWarnings("PMD.ExcessiveMethodLength") public static
focal_class.parameters: (Recording recording, Path file)
focal_class.return: void
focal_class.signature: void updateRecordingSave(Recording recording, Path file)
focal_class.class_method_signature: Serialization.insertDataIntoFile(Path path, long pos, byte[] data)
focal_class.full_signature: private static void insertDataIntoFile(Path path, long pos, byte[] data)
focal_class.identifier: insertDataIntoFile
focal_class.modifiers: private static
focal_class.parameters: (Path path, long pos, byte[] data)
focal_class.return: void
focal_class.signature: void insertDataIntoFile(Path path, long pos, byte[] data)
focal_class.class_method_signature: Serialization.encode(T value)
focal_class.full_signature: public static byte[] encode(T value)
focal_class.identifier: encode
focal_class.modifiers: public static
focal_class.parameters: (T value)
focal_class.return: byte[]
focal_class.signature: byte[] encode(T value)
focal_class.class_method_signature: Serialization.encode(T value, DataType<T> type)
focal_class.full_signature: public static byte[] encode(T value, DataType<T> type)
focal_class.identifier: encode
focal_class.modifiers: public static
focal_class.parameters: (T value, DataType<T> type)
focal_class.return: byte[]
focal_class.signature: byte[] encode(T value, DataType<T> type)
focal_class.class_method_signature: Serialization.decode(byte[] buffer, int bufferPosition, DataType<T> type)
focal_class.full_signature: public static T decode(byte[] buffer, int bufferPosition, DataType<T> type)
focal_class.identifier: decode
focal_class.modifiers: public static
focal_class.parameters: (byte[] buffer, int bufferPosition, DataType<T> type)
focal_class.return: T
focal_class.signature: T decode(byte[] buffer, int bufferPosition, DataType<T> type)
focal_class.class_method_signature: Serialization.loadRecording(Path file)
focal_class.full_signature: public static Recording loadRecording(Path file)
focal_class.identifier: loadRecording
focal_class.modifiers: public static
focal_class.parameters: (Path file)
focal_class.return: Recording
focal_class.signature: Recording loadRecording(Path file)
focal_class.class_method_signature: Serialization.sizeOfStringArray(String[] array)
focal_class.full_signature: public static int sizeOfStringArray(String[] array)
focal_class.identifier: sizeOfStringArray
focal_class.modifiers: public static
focal_class.parameters: (String[] array)
focal_class.return: int
focal_class.signature: int sizeOfStringArray(String[] array)
focal_class.class_method_signature: Serialization.header(List<TimestampedData> data)
focal_class.full_signature: public static byte[] header(List<TimestampedData> data)
focal_class.identifier: header
focal_class.modifiers: public static
focal_class.parameters: (List<TimestampedData> data)
focal_class.return: byte[]
focal_class.signature: byte[] header(List<TimestampedData> data)
focal_class.class_method_signature: Serialization.generateConstantPool(List<TimestampedData> data)
focal_class.full_signature: private static List<String> generateConstantPool(List<TimestampedData> data)
focal_class.identifier: generateConstantPool
focal_class.modifiers: private static
focal_class.parameters: (List<TimestampedData> data)
focal_class.return: List<String>
focal_class.signature: List<String> generateConstantPool(List<TimestampedData> data)
focal_class.class_method_signature: Serialization.getAllSourceNames(List<TimestampedData> data)
focal_class.full_signature: public static List<String> getAllSourceNames(List<TimestampedData> data)
focal_class.identifier: getAllSourceNames
focal_class.modifiers: public static
focal_class.parameters: (List<TimestampedData> data)
focal_class.return: List<String>
focal_class.signature: List<String> getAllSourceNames(List<TimestampedData> data)
focal_class.class_method_signature: Serialization.getAllDataTypeNames(List<TimestampedData> data)
focal_class.full_signature: private static List<String> getAllDataTypeNames(List<TimestampedData> data)
focal_class.identifier: getAllDataTypeNames
focal_class.modifiers: private static
focal_class.parameters: (List<TimestampedData> data)
focal_class.return: List<String>
focal_class.signature: List<String> getAllDataTypeNames(List<TimestampedData> data)
focal_class.class_method_signature: Serialization.toByteArray(boolean val)
focal_class.full_signature: public static byte[] toByteArray(boolean val)
focal_class.identifier: toByteArray
focal_class.modifiers: public static
focal_class.parameters: (boolean val)
focal_class.return: byte[]
focal_class.signature: byte[] toByteArray(boolean val)
focal_class.class_method_signature: Serialization.toByteArray(byte val)
focal_class.full_signature: public static byte[] toByteArray(byte val)
focal_class.identifier: toByteArray
focal_class.modifiers: public static
focal_class.parameters: (byte val)
focal_class.return: byte[]
focal_class.signature: byte[] toByteArray(byte val)
focal_class.class_method_signature: Serialization.toByteArray(short val)
focal_class.full_signature: public static byte[] toByteArray(short val)
focal_class.identifier: toByteArray
focal_class.modifiers: public static
focal_class.parameters: (short val)
focal_class.return: byte[]
focal_class.signature: byte[] toByteArray(short val)
focal_class.class_method_signature: Serialization.toByteArray(int val)
focal_class.full_signature: public static byte[] toByteArray(int val)
focal_class.identifier: toByteArray
focal_class.modifiers: public static
focal_class.parameters: (int val)
focal_class.return: byte[]
focal_class.signature: byte[] toByteArray(int val)
focal_class.class_method_signature: Serialization.toByteArray(long val)
focal_class.full_signature: public static byte[] toByteArray(long val)
focal_class.identifier: toByteArray
focal_class.modifiers: public static
focal_class.parameters: (long val)
focal_class.return: byte[]
focal_class.signature: byte[] toByteArray(long val)
focal_class.class_method_signature: Serialization.toByteArray(double val)
focal_class.full_signature: public static byte[] toByteArray(double val)
focal_class.identifier: toByteArray
focal_class.modifiers: public static
focal_class.parameters: (double val)
focal_class.return: byte[]
focal_class.signature: byte[] toByteArray(double val)
focal_class.class_method_signature: Serialization.toByteArray(String string)
focal_class.full_signature: public static byte[] toByteArray(String string)
focal_class.identifier: toByteArray
focal_class.modifiers: public static
focal_class.parameters: (String string)
focal_class.return: byte[]
focal_class.signature: byte[] toByteArray(String string)
focal_class.class_method_signature: Serialization.toByteArray(String[] array)
focal_class.full_signature: public static byte[] toByteArray(String[] array)
focal_class.identifier: toByteArray
focal_class.modifiers: public static
focal_class.parameters: (String[] array)
focal_class.return: byte[]
focal_class.signature: byte[] toByteArray(String[] array)
focal_class.class_method_signature: Serialization.subArray(byte[] raw, int start, int end)
focal_class.full_signature: @Deprecated public static byte[] subArray(byte[] raw, int start, int end)
focal_class.identifier: subArray
focal_class.modifiers: @Deprecated public static
focal_class.parameters: (byte[] raw, int start, int end)
focal_class.return: byte[]
focal_class.signature: byte[] subArray(byte[] raw, int start, int end)
focal_class.class_method_signature: Serialization.put(byte[] dst, byte[] src, int pos)
focal_class.full_signature: public static void put(byte[] dst, byte[] src, int pos)
focal_class.identifier: put
focal_class.modifiers: public static
focal_class.parameters: (byte[] dst, byte[] src, int pos)
focal_class.return: void
focal_class.signature: void put(byte[] dst, byte[] src, int pos)
focal_class.class_method_signature: Serialization.readBoolean(byte[] array)
focal_class.full_signature: public static boolean readBoolean(byte[] array)
focal_class.identifier: readBoolean
focal_class.modifiers: public static
focal_class.parameters: (byte[] array)
focal_class.return: boolean
focal_class.signature: boolean readBoolean(byte[] array)
focal_class.class_method_signature: Serialization.readBoolean(byte[] array, int pos)
focal_class.full_signature: public static boolean readBoolean(byte[] array, int pos)
focal_class.identifier: readBoolean
focal_class.modifiers: public static
focal_class.parameters: (byte[] array, int pos)
focal_class.return: boolean
focal_class.signature: boolean readBoolean(byte[] array, int pos)
focal_class.class_method_signature: Serialization.readShort(byte[] array)
focal_class.full_signature: public static short readShort(byte[] array)
focal_class.identifier: readShort
focal_class.modifiers: public static
focal_class.parameters: (byte[] array)
focal_class.return: short
focal_class.signature: short readShort(byte[] array)
focal_class.class_method_signature: Serialization.readShort(byte[] array, int pos)
focal_class.full_signature: public static short readShort(byte[] array, int pos)
focal_class.identifier: readShort
focal_class.modifiers: public static
focal_class.parameters: (byte[] array, int pos)
focal_class.return: short
focal_class.signature: short readShort(byte[] array, int pos)
focal_class.class_method_signature: Serialization.readInt(byte[] array)
focal_class.full_signature: public static int readInt(byte[] array)
focal_class.identifier: readInt
focal_class.modifiers: public static
focal_class.parameters: (byte[] array)
focal_class.return: int
focal_class.signature: int readInt(byte[] array)
focal_class.class_method_signature: Serialization.readInt(byte[] array, int pos)
focal_class.full_signature: public static int readInt(byte[] array, int pos)
focal_class.identifier: readInt
focal_class.modifiers: public static
focal_class.parameters: (byte[] array, int pos)
focal_class.return: int
focal_class.signature: int readInt(byte[] array, int pos)
focal_class.class_method_signature: Serialization.readLong(byte[] array)
focal_class.full_signature: public static long readLong(byte[] array)
focal_class.identifier: readLong
focal_class.modifiers: public static
focal_class.parameters: (byte[] array)
focal_class.return: long
focal_class.signature: long readLong(byte[] array)
focal_class.class_method_signature: Serialization.readLong(byte[] array, int pos)
focal_class.full_signature: public static long readLong(byte[] array, int pos)
focal_class.identifier: readLong
focal_class.modifiers: public static
focal_class.parameters: (byte[] array, int pos)
focal_class.return: long
focal_class.signature: long readLong(byte[] array, int pos)
focal_class.class_method_signature: Serialization.readDouble(byte[] array, int pos)
focal_class.full_signature: public static double readDouble(byte[] array, int pos)
focal_class.identifier: readDouble
focal_class.modifiers: public static
focal_class.parameters: (byte[] array, int pos)
focal_class.return: double
focal_class.signature: double readDouble(byte[] array, int pos)
focal_class.class_method_signature: Serialization.readString(byte[] array, int pos)
focal_class.full_signature: public static String readString(byte[] array, int pos)
focal_class.identifier: readString
focal_class.modifiers: public static
focal_class.parameters: (byte[] array, int pos)
focal_class.return: String
focal_class.signature: String readString(byte[] array, int pos)
focal_class.class_method_signature: Serialization.readStringArray(byte[] array, int pos)
focal_class.full_signature: public static String[] readStringArray(byte[] array, int pos)
focal_class.identifier: readStringArray
focal_class.modifiers: public static
focal_class.parameters: (byte[] array, int pos)
focal_class.return: String[]
focal_class.signature: String[] readStringArray(byte[] array, int pos)
focal_method.body: public static byte[] toByteArray(boolean val) {
      return new byte[]{(byte) (val ? 1 : 0)};
    }
focal_method.class_method_signature: Serialization.toByteArray(boolean val)
focal_method.full_signature: public static byte[] toByteArray(boolean val)
focal_method.identifier: toByteArray
focal_method.modifiers: public static
focal_method.parameters: (boolean val)
focal_method.return: byte[]
focal_method.signature: byte[] toByteArray(boolean val)