public class org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson extends org.apache.cassandra.cql3.statements.ModificationStatement$Parsed
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson
  super_class: org.apache.cassandra.cql3.statements.ModificationStatement$Parsed
{
  private final org.apache.cassandra.cql3.Json$Raw jsonValue;
    descriptor: Lorg/apache/cassandra/cql3/Json$Raw;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean defaultUnset;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(org.apache.cassandra.cql3.CFName, org.apache.cassandra.cql3.Attributes$Raw, org.apache.cassandra.cql3.Json$Raw, boolean, boolean);
    descriptor: (Lorg/apache/cassandra/cql3/CFName;Lorg/apache/cassandra/cql3/Attributes$Raw;Lorg/apache/cassandra/cql3/Json$Raw;ZZ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson this
        start local 1 // org.apache.cassandra.cql3.CFName name
        start local 2 // org.apache.cassandra.cql3.Attributes$Raw attrs
        start local 3 // org.apache.cassandra.cql3.Json$Raw jsonValue
        start local 4 // boolean defaultUnset
        start local 5 // boolean ifNotExists
         0: .line 219
            aload 0 /* this */
            aload 1 /* name */
            getstatic org.apache.cassandra.cql3.statements.StatementType.INSERT:Lorg/apache/cassandra/cql3/statements/StatementType;
            aload 2 /* attrs */
            aconst_null
            iload 5 /* ifNotExists */
            iconst_0
            invokespecial org.apache.cassandra.cql3.statements.ModificationStatement$Parsed.<init>:(Lorg/apache/cassandra/cql3/CFName;Lorg/apache/cassandra/cql3/statements/StatementType;Lorg/apache/cassandra/cql3/Attributes$Raw;Ljava/util/List;ZZ)V
         1: .line 220
            aload 0 /* this */
            aload 3 /* jsonValue */
            putfield org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson.jsonValue:Lorg/apache/cassandra/cql3/Json$Raw;
         2: .line 221
            aload 0 /* this */
            iload 4 /* defaultUnset */
            putfield org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson.defaultUnset:Z
         3: .line 222
            return
        end local 5 // boolean ifNotExists
        end local 4 // boolean defaultUnset
        end local 3 // org.apache.cassandra.cql3.Json$Raw jsonValue
        end local 2 // org.apache.cassandra.cql3.Attributes$Raw attrs
        end local 1 // org.apache.cassandra.cql3.CFName name
        end local 0 // org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    4     0          this  Lorg/apache/cassandra/cql3/statements/UpdateStatement$ParsedInsertJson;
            0    4     1          name  Lorg/apache/cassandra/cql3/CFName;
            0    4     2         attrs  Lorg/apache/cassandra/cql3/Attributes$Raw;
            0    4     3     jsonValue  Lorg/apache/cassandra/cql3/Json$Raw;
            0    4     4  defaultUnset  Z
            0    4     5   ifNotExists  Z
    MethodParameters:
              Name  Flags
      name          
      attrs         
      jsonValue     
      defaultUnset  
      ifNotExists   

  protected org.apache.cassandra.cql3.statements.ModificationStatement prepareInternal(org.apache.cassandra.config.CFMetaData, org.apache.cassandra.cql3.VariableSpecifications, org.apache.cassandra.cql3.Conditions, org.apache.cassandra.cql3.Attributes);
    descriptor: (Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/VariableSpecifications;Lorg/apache/cassandra/cql3/Conditions;Lorg/apache/cassandra/cql3/Attributes;)Lorg/apache/cassandra/cql3/statements/ModificationStatement;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=10, locals=14, args_size=5
        start local 0 // org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson this
        start local 1 // org.apache.cassandra.config.CFMetaData cfm
        start local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        start local 3 // org.apache.cassandra.cql3.Conditions conditions
        start local 4 // org.apache.cassandra.cql3.Attributes attrs
         0: .line 230
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.isCounter:()Z
            ldc "INSERT statements are not allowed on counter tables, use UPDATE instead"
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkFalse:(ZLjava/lang/String;)V
         1: .line 232
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.allColumnsInSelectOrder:()Ljava/util/Iterator;
            invokestatic com.google.common.collect.Lists.newArrayList:(Ljava/util/Iterator;)Ljava/util/ArrayList;
            astore 5 /* defs */
        start local 5 // java.util.List defs
         2: .line 233
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson.jsonValue:Lorg/apache/cassandra/cql3/Json$Raw;
            aload 1 /* cfm */
            aload 5 /* defs */
            aload 2 /* boundNames */
            invokeinterface org.apache.cassandra.cql3.Json$Raw.prepareAndCollectMarkers:(Lorg/apache/cassandra/config/CFMetaData;Ljava/util/Collection;Lorg/apache/cassandra/cql3/VariableSpecifications;)Lorg/apache/cassandra/cql3/Json$Prepared;
            astore 6 /* prepared */
        start local 6 // org.apache.cassandra.cql3.Json$Prepared prepared
         3: .line 235
            new org.apache.cassandra.cql3.WhereClause$Builder
            dup
            invokespecial org.apache.cassandra.cql3.WhereClause$Builder.<init>:()V
            astore 7 /* whereClause */
        start local 7 // org.apache.cassandra.cql3.WhereClause$Builder whereClause
         4: .line 236
            new org.apache.cassandra.cql3.Operations
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson.type:Lorg/apache/cassandra/cql3/statements/StatementType;
            invokespecial org.apache.cassandra.cql3.Operations.<init>:(Lorg/apache/cassandra/cql3/statements/StatementType;)V
            astore 8 /* operations */
        start local 8 // org.apache.cassandra.cql3.Operations operations
         5: .line 237
            iconst_0
            istore 9 /* hasClusteringColumnsSet */
        start local 9 // boolean hasClusteringColumnsSet
         6: .line 239
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.isSuper:()Z
            ifeq 10
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.isDense:()Z
            ifeq 10
         7: .line 241
            iconst_1
            istore 9 /* hasClusteringColumnsSet */
         8: .line 242
            aload 1 /* cfm */
            aload 5 /* defs */
            aload 2 /* boundNames */
            aload 6 /* prepared */
            aload 7 /* whereClause */
            aload 8 /* operations */
            invokestatic org.apache.cassandra.cql3.SuperColumnCompatibility.prepareInsertJSONOperations:(Lorg/apache/cassandra/config/CFMetaData;Ljava/util/List;Lorg/apache/cassandra/cql3/VariableSpecifications;Lorg/apache/cassandra/cql3/Json$Prepared;Lorg/apache/cassandra/cql3/WhereClause$Builder;Lorg/apache/cassandra/cql3/Operations;)V
         9: .line 243
            goto 22
        10: .line 251
      StackMap locals: org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson org.apache.cassandra.config.CFMetaData org.apache.cassandra.cql3.VariableSpecifications org.apache.cassandra.cql3.Conditions org.apache.cassandra.cql3.Attributes java.util.List org.apache.cassandra.cql3.Json$Prepared org.apache.cassandra.cql3.WhereClause$Builder org.apache.cassandra.cql3.Operations int
      StackMap stack:
            aload 5 /* defs */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 21
      StackMap locals: org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson org.apache.cassandra.config.CFMetaData org.apache.cassandra.cql3.VariableSpecifications org.apache.cassandra.cql3.Conditions org.apache.cassandra.cql3.Attributes java.util.List org.apache.cassandra.cql3.Json$Prepared org.apache.cassandra.cql3.WhereClause$Builder org.apache.cassandra.cql3.Operations int top java.util.Iterator
      StackMap stack:
        11: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.config.ColumnDefinition
            astore 10 /* def */
        start local 10 // org.apache.cassandra.config.ColumnDefinition def
        12: .line 253
            aload 10 /* def */
            invokevirtual org.apache.cassandra.config.ColumnDefinition.isClusteringColumn:()Z
            ifeq 14
        13: .line 254
            iconst_1
            istore 9 /* hasClusteringColumnsSet */
        14: .line 256
      StackMap locals: org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson org.apache.cassandra.config.CFMetaData org.apache.cassandra.cql3.VariableSpecifications org.apache.cassandra.cql3.Conditions org.apache.cassandra.cql3.Attributes java.util.List org.apache.cassandra.cql3.Json$Prepared org.apache.cassandra.cql3.WhereClause$Builder org.apache.cassandra.cql3.Operations int org.apache.cassandra.config.ColumnDefinition java.util.Iterator
      StackMap stack:
            aload 6 /* prepared */
            aload 10 /* def */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson.defaultUnset:Z
            invokevirtual org.apache.cassandra.cql3.Json$Prepared.getRawTermForColumn:(Lorg/apache/cassandra/config/ColumnDefinition;Z)Lorg/apache/cassandra/cql3/Term$Raw;
            astore 12 /* raw */
        start local 12 // org.apache.cassandra.cql3.Term$Raw raw
        15: .line 257
            aload 10 /* def */
            invokevirtual org.apache.cassandra.config.ColumnDefinition.isPrimaryKeyColumn:()Z
            ifeq 18
        16: .line 259
            aload 7 /* whereClause */
            new org.apache.cassandra.cql3.SingleColumnRelation
            dup
            aload 10 /* def */
            invokestatic org.apache.cassandra.config.ColumnDefinition$Raw.forColumn:(Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/config/ColumnDefinition$Raw;
            getstatic org.apache.cassandra.cql3.Operator.EQ:Lorg/apache/cassandra/cql3/Operator;
            aload 12 /* raw */
            invokespecial org.apache.cassandra.cql3.SingleColumnRelation.<init>:(Lorg/apache/cassandra/config/ColumnDefinition$Raw;Lorg/apache/cassandra/cql3/Operator;Lorg/apache/cassandra/cql3/Term$Raw;)V
            invokevirtual org.apache.cassandra.cql3.WhereClause$Builder.add:(Lorg/apache/cassandra/cql3/Relation;)Lorg/apache/cassandra/cql3/WhereClause$Builder;
            pop
        17: .line 260
            goto 21
        18: .line 263
      StackMap locals: org.apache.cassandra.cql3.Term$Raw
      StackMap stack:
            new org.apache.cassandra.cql3.Operation$SetValue
            dup
            aload 12 /* raw */
            invokespecial org.apache.cassandra.cql3.Operation$SetValue.<init>:(Lorg/apache/cassandra/cql3/Term$Raw;)V
            aload 1 /* cfm */
            aload 10 /* def */
            invokevirtual org.apache.cassandra.cql3.Operation$SetValue.prepare:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/config/ColumnDefinition;)Lorg/apache/cassandra/cql3/Operation;
            astore 13 /* operation */
        start local 13 // org.apache.cassandra.cql3.Operation operation
        19: .line 264
            aload 13 /* operation */
            aload 2 /* boundNames */
            invokevirtual org.apache.cassandra.cql3.Operation.collectMarkerSpecification:(Lorg/apache/cassandra/cql3/VariableSpecifications;)V
        20: .line 265
            aload 8 /* operations */
            aload 13 /* operation */
            invokevirtual org.apache.cassandra.cql3.Operations.add:(Lorg/apache/cassandra/cql3/Operation;)V
        end local 13 // org.apache.cassandra.cql3.Operation operation
        end local 12 // org.apache.cassandra.cql3.Term$Raw raw
        end local 10 // org.apache.cassandra.config.ColumnDefinition def
        21: .line 251
      StackMap locals: org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson org.apache.cassandra.config.CFMetaData org.apache.cassandra.cql3.VariableSpecifications org.apache.cassandra.cql3.Conditions org.apache.cassandra.cql3.Attributes java.util.List org.apache.cassandra.cql3.Json$Prepared org.apache.cassandra.cql3.WhereClause$Builder org.apache.cassandra.cql3.Operations int top java.util.Iterator
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 11
        22: .line 274
      StackMap locals: org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson org.apache.cassandra.config.CFMetaData org.apache.cassandra.cql3.VariableSpecifications org.apache.cassandra.cql3.Conditions org.apache.cassandra.cql3.Attributes java.util.List org.apache.cassandra.cql3.Json$Prepared org.apache.cassandra.cql3.WhereClause$Builder org.apache.cassandra.cql3.Operations int
      StackMap stack:
            iload 9 /* hasClusteringColumnsSet */
            ifne 23
            aload 8 /* operations */
            aload 3 /* conditions */
            invokestatic org.apache.cassandra.cql3.statements.UpdateStatement.appliesOnlyToStaticColumns:(Lorg/apache/cassandra/cql3/Operations;Lorg/apache/cassandra/cql3/Conditions;)Z
            ifeq 23
            iconst_1
            goto 24
      StackMap locals:
      StackMap stack:
        23: iconst_0
      StackMap locals:
      StackMap stack: int
        24: istore 10 /* applyOnlyToStaticColumns */
        start local 10 // boolean applyOnlyToStaticColumns
        25: .line 276
            new org.apache.cassandra.cql3.restrictions.StatementRestrictions
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson.type:Lorg/apache/cassandra/cql3/statements/StatementType;
        26: .line 277
            aload 1 /* cfm */
        27: .line 278
            aload 7 /* whereClause */
            invokevirtual org.apache.cassandra.cql3.WhereClause$Builder.build:()Lorg/apache/cassandra/cql3/WhereClause;
        28: .line 279
            aload 2 /* boundNames */
        29: .line 280
            iload 10 /* applyOnlyToStaticColumns */
        30: .line 281
            iconst_0
        31: .line 282
            iconst_0
        32: .line 283
            iconst_0
        33: .line 276
            invokespecial org.apache.cassandra.cql3.restrictions.StatementRestrictions.<init>:(Lorg/apache/cassandra/cql3/statements/StatementType;Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/WhereClause;Lorg/apache/cassandra/cql3/VariableSpecifications;ZZZZ)V
            astore 11 /* restrictions */
        start local 11 // org.apache.cassandra.cql3.restrictions.StatementRestrictions restrictions
        34: .line 285
            new org.apache.cassandra.cql3.statements.UpdateStatement
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson.type:Lorg/apache/cassandra/cql3/statements/StatementType;
        35: .line 286
            aload 2 /* boundNames */
            invokevirtual org.apache.cassandra.cql3.VariableSpecifications.size:()I
        36: .line 287
            aload 1 /* cfm */
        37: .line 288
            aload 8 /* operations */
        38: .line 289
            aload 11 /* restrictions */
        39: .line 290
            aload 3 /* conditions */
        40: .line 291
            aload 4 /* attrs */
        41: .line 285
            invokespecial org.apache.cassandra.cql3.statements.UpdateStatement.<init>:(Lorg/apache/cassandra/cql3/statements/StatementType;ILorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/Operations;Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;Lorg/apache/cassandra/cql3/Conditions;Lorg/apache/cassandra/cql3/Attributes;)V
            areturn
        end local 11 // org.apache.cassandra.cql3.restrictions.StatementRestrictions restrictions
        end local 10 // boolean applyOnlyToStaticColumns
        end local 9 // boolean hasClusteringColumnsSet
        end local 8 // org.apache.cassandra.cql3.Operations operations
        end local 7 // org.apache.cassandra.cql3.WhereClause$Builder whereClause
        end local 6 // org.apache.cassandra.cql3.Json$Prepared prepared
        end local 5 // java.util.List defs
        end local 4 // org.apache.cassandra.cql3.Attributes attrs
        end local 3 // org.apache.cassandra.cql3.Conditions conditions
        end local 2 // org.apache.cassandra.cql3.VariableSpecifications boundNames
        end local 1 // org.apache.cassandra.config.CFMetaData cfm
        end local 0 // org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   42     0                      this  Lorg/apache/cassandra/cql3/statements/UpdateStatement$ParsedInsertJson;
            0   42     1                       cfm  Lorg/apache/cassandra/config/CFMetaData;
            0   42     2                boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
            0   42     3                conditions  Lorg/apache/cassandra/cql3/Conditions;
            0   42     4                     attrs  Lorg/apache/cassandra/cql3/Attributes;
            2   42     5                      defs  Ljava/util/List<Lorg/apache/cassandra/config/ColumnDefinition;>;
            3   42     6                  prepared  Lorg/apache/cassandra/cql3/Json$Prepared;
            4   42     7               whereClause  Lorg/apache/cassandra/cql3/WhereClause$Builder;
            5   42     8                operations  Lorg/apache/cassandra/cql3/Operations;
            6   42     9   hasClusteringColumnsSet  Z
           12   21    10                       def  Lorg/apache/cassandra/config/ColumnDefinition;
           15   21    12                       raw  Lorg/apache/cassandra/cql3/Term$Raw;
           19   21    13                 operation  Lorg/apache/cassandra/cql3/Operation;
           25   42    10  applyOnlyToStaticColumns  Z
           34   42    11              restrictions  Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
    MethodParameters:
            Name  Flags
      cfm         
      boundNames  
      conditions  
      attrs       
}
SourceFile: "UpdateStatement.java"
NestHost: org.apache.cassandra.cql3.statements.UpdateStatement
InnerClasses:
  public abstract Raw = org.apache.cassandra.config.ColumnDefinition$Raw of org.apache.cassandra.config.ColumnDefinition
  public Raw = org.apache.cassandra.cql3.Attributes$Raw of org.apache.cassandra.cql3.Attributes
  public Raw = org.apache.cassandra.cql3.ColumnCondition$Raw of org.apache.cassandra.cql3.ColumnCondition
  public abstract Prepared = org.apache.cassandra.cql3.Json$Prepared of org.apache.cassandra.cql3.Json
  public abstract Raw = org.apache.cassandra.cql3.Json$Raw of org.apache.cassandra.cql3.Json
  public SetValue = org.apache.cassandra.cql3.Operation$SetValue of org.apache.cassandra.cql3.Operation
  public abstract Raw = org.apache.cassandra.cql3.Term$Raw of org.apache.cassandra.cql3.Term
  public final Builder = org.apache.cassandra.cql3.WhereClause$Builder of org.apache.cassandra.cql3.WhereClause
  public abstract Parsed = org.apache.cassandra.cql3.statements.ModificationStatement$Parsed of org.apache.cassandra.cql3.statements.ModificationStatement
  public ParsedInsertJson = org.apache.cassandra.cql3.statements.UpdateStatement$ParsedInsertJson of org.apache.cassandra.cql3.statements.UpdateStatement