code: public static <T> T parseValue(final String json, final Decoder<T> valueDecoder) {
      final JsonReader bsonReader = new JsonReader(json);
      bsonReader.readBsonType();
      return valueDecoder.decode(bsonReader, DecoderContext.builder().build());
    }
docs: Parses the provided extended JSON string and decodes it into a T value as specified by the
  provided {@link Decoder}.
  
  @param json the JSON string to parse.
  @param valueDecoder the {@link Decoder} to use to convert the BSON value into the type T.
  @param <T> the type into which the JSON string is decoded.
  @return the decoded value.