@Override
    public TypeInformation<T> getProducedType() {
        return type;
    }
@Test
    void testTypeExtractionGenericAnonymous() {
        TypeInformation<JSONPObject> type =
                new AbstractDeserializationSchema<JSONPObject>() {
                    @Override
                    public JSONPObject deserialize(byte[] message) {
                        throw new UnsupportedOperationException();
                    }
                }.getProducedType();

        TypeInformation<JSONPObject> expected = TypeInformation.of(new TypeHint<JSONPObject>() {});
        assertThat(type).isEqualTo(expected);
    }