test_class.declarator: gson
test_class.modifier: private
test_class.original_string: private Gson gson;
test_class.type: Gson
test_class.var_name: gson
test_class.file: app/src/test/java/edu/wpi/first/shuffleboard/app/json/TileSizeSaverTest.java
test_class.identifier: TileSizeSaverTest
test_case.body: @Test
    public void deserialize() throws Exception {
      TileSize tileSize = gson.fromJson("[1,2]", TileSize.class);
      assertEquals(tileSize, new TileSize(1, 2));
    }
test_case.class_method_signature: TileSizeSaverTest.deserialize()
test_case.full_signature: @Test public void deserialize()
test_case.identifier: deserialize
test_case.invocations: fromJson assertEquals
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void deserialize()
focal_class.file: app/src/main/java/edu/wpi/first/shuffleboard/app/json/TileSizeSaver.java
focal_class.identifier: TileSizeSaver
focal_class.interfaces: implements ElementTypeAdapter<TileSize>
focal_class.class_method_signature: TileSizeSaver.serialize(TileSize src, JsonSerializationContext context)
focal_class.full_signature: @Override public JsonElement serialize(TileSize src, JsonSerializationContext context)
focal_class.identifier: serialize
focal_class.modifiers: @Override public
focal_class.parameters: (TileSize src, JsonSerializationContext context)
focal_class.return: JsonElement
focal_class.signature: JsonElement serialize(TileSize src, JsonSerializationContext context)
focal_class.class_method_signature: TileSizeSaver.deserialize(JsonElement json, JsonDeserializationContext context)
focal_class.full_signature: @Override public TileSize deserialize(JsonElement json, JsonDeserializationContext context)
focal_class.identifier: deserialize
focal_class.modifiers: @Override public
focal_class.parameters: (JsonElement json, JsonDeserializationContext context)
focal_class.return: TileSize
focal_class.signature: TileSize deserialize(JsonElement json, JsonDeserializationContext context)
focal_method.body: @Override
    public TileSize deserialize(JsonElement json, JsonDeserializationContext context) throws JsonParseException {
      int width = json.getAsJsonArray().get(0).getAsInt();
      int height = json.getAsJsonArray().get(1).getAsInt();
      try {
        return new TileSize(width, height);
      } catch (IllegalArgumentException e) {
        throw new JsonParseException("Illegal TileSize. Expected positive integers, found " + json.getAsString(), e);
      }
    }
focal_method.class_method_signature: TileSizeSaver.deserialize(JsonElement json, JsonDeserializationContext context)
focal_method.full_signature: @Override public TileSize deserialize(JsonElement json, JsonDeserializationContext context)
focal_method.identifier: deserialize
focal_method.invocations: getAsInt get getAsJsonArray getAsInt get getAsJsonArray getAsString
focal_method.modifiers: @Override public
focal_method.parameters: (JsonElement json, JsonDeserializationContext context)
focal_method.return: TileSize
focal_method.signature: TileSize deserialize(JsonElement json, JsonDeserializationContext context)