test_class.file: api/src/test/java/edu/wpi/first/shuffleboard/api/sources/recording/serialization/NumberArrayAdapterTest.java
test_class.identifier: NumberArrayAdapterTest
test_class.superclass: extends AbstractAdapterTest<double[]>
test_case.body: @Test
    public void testDecodeEmpty() {
      byte[] buffer = {0, 0, 0, 0};
      double[] expected = {};
      assertArrayEquals(expected, adapter.deserialize(buffer, 0));
    }
test_case.class_method_signature: NumberArrayAdapterTest.testDecodeEmpty()
test_case.full_signature: @Test public void testDecodeEmpty()
test_case.identifier: testDecodeEmpty
test_case.invocations: assertArrayEquals deserialize
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testDecodeEmpty()
focal_class.file: api/src/main/java/edu/wpi/first/shuffleboard/api/sources/recording/serialization/NumberArrayAdapter.java
focal_class.identifier: NumberArrayAdapter
focal_class.class_method_signature: NumberArrayAdapter.NumberArrayAdapter()
focal_class.full_signature: public  NumberArrayAdapter()
focal_class.identifier: NumberArrayAdapter
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  NumberArrayAdapter()
focal_class.class_method_signature: NumberArrayAdapter.serialize(double[] array)
focal_class.full_signature: @Override public byte[] serialize(double[] array)
focal_class.identifier: serialize
focal_class.modifiers: @Override public
focal_class.parameters: (double[] array)
focal_class.return: byte[]
focal_class.signature: byte[] serialize(double[] array)
focal_class.class_method_signature: NumberArrayAdapter.deserialize(byte[] buffer, int bufferPosition)
focal_class.full_signature: @Override public double[] deserialize(byte[] buffer, int bufferPosition)
focal_class.identifier: deserialize
focal_class.modifiers: @Override public
focal_class.parameters: (byte[] buffer, int bufferPosition)
focal_class.return: double[]
focal_class.signature: double[] deserialize(byte[] buffer, int bufferPosition)
focal_class.class_method_signature: NumberArrayAdapter.getSerializedSize(double[] value)
focal_class.full_signature: @Override public int getSerializedSize(double[] value)
focal_class.identifier: getSerializedSize
focal_class.modifiers: @Override public
focal_class.parameters: (double[] value)
focal_class.return: int
focal_class.signature: int getSerializedSize(double[] value)
focal_class.superclass: extends TypeAdapter<double[]>
focal_method.body: @Override
    public double[] deserialize(byte[] buffer, int bufferPosition) {
      int cursor = bufferPosition;
      int length = Serialization.readInt(buffer, cursor);
      cursor += Serialization.SIZE_OF_INT;
      double[] doubleArray = new double[length];
      for (int i = 0; i < length; i++) {
        double val = Serialization.readDouble(buffer, cursor);
        doubleArray[i] = val;
        cursor += Serialization.SIZE_OF_DOUBLE;
      }
      return doubleArray;
  
    }
focal_method.class_method_signature: NumberArrayAdapter.deserialize(byte[] buffer, int bufferPosition)
focal_method.full_signature: @Override public double[] deserialize(byte[] buffer, int bufferPosition)
focal_method.identifier: deserialize
focal_method.invocations: readInt readDouble
focal_method.modifiers: @Override public
focal_method.parameters: (byte[] buffer, int bufferPosition)
focal_method.return: double[]
focal_method.signature: double[] deserialize(byte[] buffer, int bufferPosition)