public class org.bson.json.JsonReader$Mark extends org.bson.AbstractBsonReader$Mark
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.bson.json.JsonReader$Mark
  super_class: org.bson.AbstractBsonReader$Mark
{
  private final org.bson.json.JsonToken pushedToken;
    descriptor: Lorg/bson/json/JsonToken;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.Object currentValue;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int markPos;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  final org.bson.json.JsonReader this$0;
    descriptor: Lorg/bson/json/JsonReader;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  protected void <init>(org.bson.json.JsonReader);
    descriptor: (Lorg/bson/json/JsonReader;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.bson.json.JsonReader$Mark this
         0: .line 1393
            aload 0 /* this */
            aload 1
            putfield org.bson.json.JsonReader$Mark.this$0:Lorg/bson/json/JsonReader;
         1: .line 1394
            aload 0 /* this */
            aload 1
            invokespecial org.bson.AbstractBsonReader$Mark.<init>:(Lorg/bson/AbstractBsonReader;)V
         2: .line 1395
            aload 0 /* this */
            aload 1
            getfield org.bson.json.JsonReader.pushedToken:Lorg/bson/json/JsonToken;
            putfield org.bson.json.JsonReader$Mark.pushedToken:Lorg/bson/json/JsonToken;
         3: .line 1396
            aload 0 /* this */
            aload 1
            getfield org.bson.json.JsonReader.currentValue:Ljava/lang/Object;
            putfield org.bson.json.JsonReader$Mark.currentValue:Ljava/lang/Object;
         4: .line 1397
            aload 0 /* this */
            aload 1
            getfield org.bson.json.JsonReader.scanner:Lorg/bson/json/JsonScanner;
            invokevirtual org.bson.json.JsonScanner.mark:()I
            putfield org.bson.json.JsonReader$Mark.markPos:I
         5: .line 1398
            return
        end local 0 // org.bson.json.JsonReader$Mark this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/bson/json/JsonReader$Mark;
    MethodParameters:
        Name  Flags
      this$0  final

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=1, args_size=1
        start local 0 // org.bson.json.JsonReader$Mark this
         0: .line 1401
            aload 0 /* this */
            invokespecial org.bson.AbstractBsonReader$Mark.reset:()V
         1: .line 1402
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.this$0:Lorg/bson/json/JsonReader;
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.pushedToken:Lorg/bson/json/JsonToken;
            putfield org.bson.json.JsonReader.pushedToken:Lorg/bson/json/JsonToken;
         2: .line 1403
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.this$0:Lorg/bson/json/JsonReader;
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.currentValue:Ljava/lang/Object;
            putfield org.bson.json.JsonReader.currentValue:Ljava/lang/Object;
         3: .line 1404
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.this$0:Lorg/bson/json/JsonReader;
            getfield org.bson.json.JsonReader.scanner:Lorg/bson/json/JsonScanner;
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.markPos:I
            invokevirtual org.bson.json.JsonScanner.reset:(I)V
         4: .line 1405
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.this$0:Lorg/bson/json/JsonReader;
            new org.bson.json.JsonReader$Context
            dup
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.this$0:Lorg/bson/json/JsonReader;
            aload 0 /* this */
            invokevirtual org.bson.json.JsonReader$Mark.getParentContext:()Lorg/bson/AbstractBsonReader$Context;
            aload 0 /* this */
            invokevirtual org.bson.json.JsonReader$Mark.getContextType:()Lorg/bson/BsonContextType;
            invokespecial org.bson.json.JsonReader$Context.<init>:(Lorg/bson/json/JsonReader;Lorg/bson/AbstractBsonReader$Context;Lorg/bson/BsonContextType;)V
            invokestatic org.bson.json.JsonReader.access$1:(Lorg/bson/json/JsonReader;Lorg/bson/AbstractBsonReader$Context;)V
         5: .line 1406
            return
        end local 0 // org.bson.json.JsonReader$Mark this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/bson/json/JsonReader$Mark;

  public void discard();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.bson.json.JsonReader$Mark this
         0: .line 1409
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.this$0:Lorg/bson/json/JsonReader;
            getfield org.bson.json.JsonReader.scanner:Lorg/bson/json/JsonScanner;
            aload 0 /* this */
            getfield org.bson.json.JsonReader$Mark.markPos:I
            invokevirtual org.bson.json.JsonScanner.discard:(I)V
         1: .line 1410
            return
        end local 0 // org.bson.json.JsonReader$Mark this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/bson/json/JsonReader$Mark;
}
SourceFile: "JsonReader.java"
NestHost: org.bson.json.JsonReader
InnerClasses:
  protected abstract Context = org.bson.AbstractBsonReader$Context of org.bson.AbstractBsonReader
  protected Mark = org.bson.AbstractBsonReader$Mark of org.bson.AbstractBsonReader
  protected Context = org.bson.json.JsonReader$Context of org.bson.json.JsonReader
  protected Mark = org.bson.json.JsonReader$Mark of org.bson.json.JsonReader