@Test
  void nextToken() throws JsonParseException {
    BsonParser p = Parsers.createParser("{ \"a\" : 1 }");
    assertNull(p.currentToken());
    assertNull(p.getCurrentName());
    assertToken(JsonToken.START_OBJECT, p.nextToken());
    assertToken(JsonToken.FIELD_NAME, p.nextToken());
    assertToken(JsonToken.FIELD_NAME, p.currentToken());
    assertToken(JsonToken.VALUE_NUMBER_INT, p.nextToken()); // token should advance from field to number
    assertToken(JsonToken.VALUE_NUMBER_INT, p.currentToken());
    assertEquals(1, p.getIntValue());
    assertEquals(1L, p.getLongValue());
    assertEquals(1D, p.getDoubleValue());
    assertEquals("1", p.getText());
    assertEquals(BigInteger.valueOf(1L), p.getBigIntegerValue());
    assertToken(JsonToken.END_OBJECT, p.nextToken());
  }
Just traverse the stream without reading any values
criteria/mongo/test/org/immutables/criteria/mongo/bson4jackson/BsonParserTreeTest.java