public class org.apache.cassandra.cql3.statements.DeleteStatement$Parsed 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.DeleteStatement$Parsed
  super_class: org.apache.cassandra.cql3.statements.ModificationStatement$Parsed
{
  private final java.util.List<org.apache.cassandra.cql3.Operation$RawDeletion> deletions;
    descriptor: Ljava/util/List;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/List<Lorg/apache/cassandra/cql3/Operation$RawDeletion;>;

  private org.apache.cassandra.cql3.WhereClause whereClause;
    descriptor: Lorg/apache/cassandra/cql3/WhereClause;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.apache.cassandra.cql3.CFName, org.apache.cassandra.cql3.Attributes$Raw, java.util.List<org.apache.cassandra.cql3.Operation$RawDeletion>, org.apache.cassandra.cql3.WhereClause, java.util.List<org.apache.cassandra.utils.Pair<org.apache.cassandra.config.ColumnDefinition$Raw, org.apache.cassandra.cql3.ColumnCondition$Raw>>, );
    descriptor: (Lorg/apache/cassandra/cql3/CFName;Lorg/apache/cassandra/cql3/Attributes$Raw;Ljava/util/List;Lorg/apache/cassandra/cql3/WhereClause;Ljava/util/List;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=7, args_size=7
        start local 0 // org.apache.cassandra.cql3.statements.DeleteStatement$Parsed this
        start local 1 // org.apache.cassandra.cql3.CFName name
        start local 2 // org.apache.cassandra.cql3.Attributes$Raw attrs
        start local 3 // java.util.List deletions
        start local 4 // org.apache.cassandra.cql3.WhereClause whereClause
        start local 5 // java.util.List conditions
        start local 6 // boolean ifExists
         0: .line 128
            aload 0 /* this */
            aload 1 /* name */
            getstatic org.apache.cassandra.cql3.statements.StatementType.DELETE:Lorg/apache/cassandra/cql3/statements/StatementType;
            aload 2 /* attrs */
            aload 5 /* conditions */
            iconst_0
            iload 6 /* ifExists */
            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 129
            aload 0 /* this */
            aload 3 /* deletions */
            putfield org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.deletions:Ljava/util/List;
         2: .line 130
            aload 0 /* this */
            aload 4 /* whereClause */
            putfield org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.whereClause:Lorg/apache/cassandra/cql3/WhereClause;
         3: .line 131
            return
        end local 6 // boolean ifExists
        end local 5 // java.util.List conditions
        end local 4 // org.apache.cassandra.cql3.WhereClause whereClause
        end local 3 // java.util.List deletions
        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.DeleteStatement$Parsed this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    4     0         this  Lorg/apache/cassandra/cql3/statements/DeleteStatement$Parsed;
            0    4     1         name  Lorg/apache/cassandra/cql3/CFName;
            0    4     2        attrs  Lorg/apache/cassandra/cql3/Attributes$Raw;
            0    4     3    deletions  Ljava/util/List<Lorg/apache/cassandra/cql3/Operation$RawDeletion;>;
            0    4     4  whereClause  Lorg/apache/cassandra/cql3/WhereClause;
            0    4     5   conditions  Ljava/util/List<Lorg/apache/cassandra/utils/Pair<Lorg/apache/cassandra/config/ColumnDefinition$Raw;Lorg/apache/cassandra/cql3/ColumnCondition$Raw;>;>;
            0    4     6     ifExists  Z
    Signature: (Lorg/apache/cassandra/cql3/CFName;Lorg/apache/cassandra/cql3/Attributes$Raw;Ljava/util/List<Lorg/apache/cassandra/cql3/Operation$RawDeletion;>;Lorg/apache/cassandra/cql3/WhereClause;Ljava/util/List<Lorg/apache/cassandra/utils/Pair<Lorg/apache/cassandra/config/ColumnDefinition$Raw;Lorg/apache/cassandra/cql3/ColumnCondition$Raw;>;>;Z)V
    MethodParameters:
             Name  Flags
      name         
      attrs        
      deletions    
      whereClause  
      conditions   
      ifExists     

  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=8, locals=10, args_size=5
        start local 0 // org.apache.cassandra.cql3.statements.DeleteStatement$Parsed 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 140
            new org.apache.cassandra.cql3.Operations
            dup
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.type:Lorg/apache/cassandra/cql3/statements/StatementType;
            invokespecial org.apache.cassandra.cql3.Operations.<init>:(Lorg/apache/cassandra/cql3/statements/StatementType;)V
            astore 5 /* operations */
        start local 5 // org.apache.cassandra.cql3.Operations operations
         1: .line 142
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.isSuper:()Z
            ifeq 5
            aload 1 /* cfm */
            invokevirtual org.apache.cassandra.config.CFMetaData.isDense:()Z
            ifeq 5
         2: .line 144
            aload 3 /* conditions */
            aload 1 /* cfm */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.whereClause:Lorg/apache/cassandra/cql3/WhereClause;
            invokestatic org.apache.cassandra.cql3.SuperColumnCompatibility.rebuildLWTColumnConditions:(Lorg/apache/cassandra/cql3/Conditions;Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/WhereClause;)Lorg/apache/cassandra/cql3/Conditions;
            astore 3 /* conditions */
         3: .line 145
            aload 0 /* this */
            aload 1 /* cfm */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.whereClause:Lorg/apache/cassandra/cql3/WhereClause;
            aload 2 /* boundNames */
            aload 5 /* operations */
            invokestatic org.apache.cassandra.cql3.SuperColumnCompatibility.prepareDeleteOperations:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/WhereClause;Lorg/apache/cassandra/cql3/VariableSpecifications;Lorg/apache/cassandra/cql3/Operations;)Lorg/apache/cassandra/cql3/WhereClause;
            putfield org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.whereClause:Lorg/apache/cassandra/cql3/WhereClause;
         4: .line 146
            goto 13
         5: .line 149
      StackMap locals: org.apache.cassandra.cql3.Operations
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.deletions:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 12
      StackMap locals: org.apache.cassandra.cql3.statements.DeleteStatement$Parsed org.apache.cassandra.config.CFMetaData org.apache.cassandra.cql3.VariableSpecifications org.apache.cassandra.cql3.Conditions org.apache.cassandra.cql3.Attributes org.apache.cassandra.cql3.Operations top java.util.Iterator
      StackMap stack:
         6: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.Operation$RawDeletion
            astore 6 /* deletion */
        start local 6 // org.apache.cassandra.cql3.Operation$RawDeletion deletion
         7: .line 151
            aload 1 /* cfm */
            aload 6 /* deletion */
            invokeinterface org.apache.cassandra.cql3.Operation$RawDeletion.affectedColumn:()Lorg/apache/cassandra/config/ColumnDefinition$Raw;
            invokestatic org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.getColumnDefinition:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/config/ColumnDefinition$Raw;)Lorg/apache/cassandra/config/ColumnDefinition;
            astore 8 /* def */
        start local 8 // org.apache.cassandra.config.ColumnDefinition def
         8: .line 155
            aload 8 /* def */
            invokevirtual org.apache.cassandra.config.ColumnDefinition.isPrimaryKeyColumn:()Z
            ldc "Invalid identifier %s for deletion (should not be a PRIMARY KEY part)"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 8 /* def */
            getfield org.apache.cassandra.config.ColumnDefinition.name:Lorg/apache/cassandra/cql3/ColumnIdentifier;
            aastore
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkFalse:(ZLjava/lang/String;[Ljava/lang/Object;)V
         9: .line 157
            aload 6 /* deletion */
            aload 1 /* cfm */
            getfield org.apache.cassandra.config.CFMetaData.ksName:Ljava/lang/String;
            aload 8 /* def */
            aload 1 /* cfm */
            invokeinterface org.apache.cassandra.cql3.Operation$RawDeletion.prepare:(Ljava/lang/String;Lorg/apache/cassandra/config/ColumnDefinition;Lorg/apache/cassandra/config/CFMetaData;)Lorg/apache/cassandra/cql3/Operation;
            astore 9 /* op */
        start local 9 // org.apache.cassandra.cql3.Operation op
        10: .line 158
            aload 9 /* op */
            aload 2 /* boundNames */
            invokevirtual org.apache.cassandra.cql3.Operation.collectMarkerSpecification:(Lorg/apache/cassandra/cql3/VariableSpecifications;)V
        11: .line 159
            aload 5 /* operations */
            aload 9 /* op */
            invokevirtual org.apache.cassandra.cql3.Operations.add:(Lorg/apache/cassandra/cql3/Operation;)V
        end local 9 // org.apache.cassandra.cql3.Operation op
        end local 8 // org.apache.cassandra.config.ColumnDefinition def
        end local 6 // org.apache.cassandra.cql3.Operation$RawDeletion deletion
        12: .line 149
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 6
        13: .line 163
      StackMap locals: org.apache.cassandra.cql3.statements.DeleteStatement$Parsed org.apache.cassandra.config.CFMetaData org.apache.cassandra.cql3.VariableSpecifications org.apache.cassandra.cql3.Conditions org.apache.cassandra.cql3.Attributes org.apache.cassandra.cql3.Operations
      StackMap stack:
            aload 0 /* this */
            aload 1 /* cfm */
        14: .line 164
            aload 2 /* boundNames */
        15: .line 165
            aload 5 /* operations */
        16: .line 166
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.whereClause:Lorg/apache/cassandra/cql3/WhereClause;
        17: .line 167
            aload 3 /* conditions */
        18: .line 163
            invokevirtual org.apache.cassandra.cql3.statements.DeleteStatement$Parsed.newRestrictions:(Lorg/apache/cassandra/config/CFMetaData;Lorg/apache/cassandra/cql3/VariableSpecifications;Lorg/apache/cassandra/cql3/Operations;Lorg/apache/cassandra/cql3/WhereClause;Lorg/apache/cassandra/cql3/Conditions;)Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            astore 6 /* restrictions */
        start local 6 // org.apache.cassandra.cql3.restrictions.StatementRestrictions restrictions
        19: .line 169
            new org.apache.cassandra.cql3.statements.DeleteStatement
            dup
            aload 2 /* boundNames */
            invokevirtual org.apache.cassandra.cql3.VariableSpecifications.size:()I
        20: .line 170
            aload 1 /* cfm */
        21: .line 171
            aload 5 /* operations */
        22: .line 172
            aload 6 /* restrictions */
        23: .line 173
            aload 3 /* conditions */
        24: .line 174
            aload 4 /* attrs */
        25: .line 169
            invokespecial org.apache.cassandra.cql3.statements.DeleteStatement.<init>:(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
            astore 7 /* stmt */
        start local 7 // org.apache.cassandra.cql3.statements.DeleteStatement stmt
        26: .line 176
            aload 7 /* stmt */
            invokevirtual org.apache.cassandra.cql3.statements.DeleteStatement.hasConditions:()Z
            ifeq 33
            aload 6 /* restrictions */
            invokevirtual org.apache.cassandra.cql3.restrictions.StatementRestrictions.hasAllPKColumnsRestrictedByEqualities:()Z
            ifne 33
        27: .line 178
            aload 5 /* operations */
            invokevirtual org.apache.cassandra.cql3.Operations.appliesToRegularColumns:()Z
        28: .line 179
            ldc "DELETE statements must restrict all PRIMARY KEY columns with equality relations in order to delete non static columns"
        29: .line 178
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkFalse:(ZLjava/lang/String;)V
        30: .line 182
            aload 3 /* conditions */
            invokeinterface org.apache.cassandra.cql3.Conditions.appliesToRegularColumns:()Z
        31: .line 183
            ldc "DELETE statements must restrict all PRIMARY KEY columns with equality relations in order to use IF condition on non static columns"
        32: .line 182
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkFalse:(ZLjava/lang/String;)V
        33: .line 187
      StackMap locals: org.apache.cassandra.cql3.restrictions.StatementRestrictions org.apache.cassandra.cql3.statements.DeleteStatement
      StackMap stack:
            aload 7 /* stmt */
            areturn
        end local 7 // org.apache.cassandra.cql3.statements.DeleteStatement stmt
        end local 6 // org.apache.cassandra.cql3.restrictions.StatementRestrictions restrictions
        end local 5 // org.apache.cassandra.cql3.Operations operations
        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.DeleteStatement$Parsed this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   34     0          this  Lorg/apache/cassandra/cql3/statements/DeleteStatement$Parsed;
            0   34     1           cfm  Lorg/apache/cassandra/config/CFMetaData;
            0   34     2    boundNames  Lorg/apache/cassandra/cql3/VariableSpecifications;
            0   34     3    conditions  Lorg/apache/cassandra/cql3/Conditions;
            0   34     4         attrs  Lorg/apache/cassandra/cql3/Attributes;
            1   34     5    operations  Lorg/apache/cassandra/cql3/Operations;
            7   12     6      deletion  Lorg/apache/cassandra/cql3/Operation$RawDeletion;
            8   12     8           def  Lorg/apache/cassandra/config/ColumnDefinition;
           10   12     9            op  Lorg/apache/cassandra/cql3/Operation;
           19   34     6  restrictions  Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
           26   34     7          stmt  Lorg/apache/cassandra/cql3/statements/DeleteStatement;
    MethodParameters:
            Name  Flags
      cfm         
      boundNames  
      conditions  
      attrs       
}
SourceFile: "DeleteStatement.java"
NestHost: org.apache.cassandra.cql3.statements.DeleteStatement
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 RawDeletion = org.apache.cassandra.cql3.Operation$RawDeletion of org.apache.cassandra.cql3.Operation
  public Parsed = org.apache.cassandra.cql3.statements.DeleteStatement$Parsed of org.apache.cassandra.cql3.statements.DeleteStatement
  public abstract Parsed = org.apache.cassandra.cql3.statements.ModificationStatement$Parsed of org.apache.cassandra.cql3.statements.ModificationStatement