public class org.apache.cassandra.cql3.statements.DeleteStatement extends org.apache.cassandra.cql3.statements.ModificationStatement
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.cassandra.cql3.statements.DeleteStatement
  super_class: org.apache.cassandra.cql3.statements.ModificationStatement
{
  private void <init>(int, org.apache.cassandra.config.CFMetaData, org.apache.cassandra.cql3.Operations, org.apache.cassandra.cql3.restrictions.StatementRestrictions, org.apache.cassandra.cql3.Conditions, org.apache.cassandra.cql3.Attributes);
    descriptor: (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
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=7, args_size=7
        start local 0 // org.apache.cassandra.cql3.statements.DeleteStatement this
        start local 1 // int boundTerms
        start local 2 // org.apache.cassandra.config.CFMetaData cfm
        start local 3 // org.apache.cassandra.cql3.Operations operations
        start local 4 // org.apache.cassandra.cql3.restrictions.StatementRestrictions restrictions
        start local 5 // org.apache.cassandra.cql3.Conditions conditions
        start local 6 // org.apache.cassandra.cql3.Attributes attrs
         0: .line 47
            aload 0 /* this */
            getstatic org.apache.cassandra.cql3.statements.StatementType.DELETE:Lorg/apache/cassandra/cql3/statements/StatementType;
            iload 1 /* boundTerms */
            aload 2 /* cfm */
            aload 3 /* operations */
            aload 4 /* restrictions */
            aload 5 /* conditions */
            aload 6 /* attrs */
            invokespecial org.apache.cassandra.cql3.statements.ModificationStatement.<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
         1: .line 48
            return
        end local 6 // org.apache.cassandra.cql3.Attributes attrs
        end local 5 // org.apache.cassandra.cql3.Conditions conditions
        end local 4 // org.apache.cassandra.cql3.restrictions.StatementRestrictions restrictions
        end local 3 // org.apache.cassandra.cql3.Operations operations
        end local 2 // org.apache.cassandra.config.CFMetaData cfm
        end local 1 // int boundTerms
        end local 0 // org.apache.cassandra.cql3.statements.DeleteStatement this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    2     0          this  Lorg/apache/cassandra/cql3/statements/DeleteStatement;
            0    2     1    boundTerms  I
            0    2     2           cfm  Lorg/apache/cassandra/config/CFMetaData;
            0    2     3    operations  Lorg/apache/cassandra/cql3/Operations;
            0    2     4  restrictions  Lorg/apache/cassandra/cql3/restrictions/StatementRestrictions;
            0    2     5    conditions  Lorg/apache/cassandra/cql3/Conditions;
            0    2     6         attrs  Lorg/apache/cassandra/cql3/Attributes;
    MethodParameters:
              Name  Flags
      boundTerms    
      cfm           
      operations    
      restrictions  
      conditions    
      attrs         

  public void addUpdateForKey(org.apache.cassandra.db.partitions.PartitionUpdate, org.apache.cassandra.db.Clustering, org.apache.cassandra.cql3.UpdateParameters);
    descriptor: (Lorg/apache/cassandra/db/partitions/PartitionUpdate;Lorg/apache/cassandra/db/Clustering;Lorg/apache/cassandra/cql3/UpdateParameters;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=4
        start local 0 // org.apache.cassandra.cql3.statements.DeleteStatement this
        start local 1 // org.apache.cassandra.db.partitions.PartitionUpdate update
        start local 2 // org.apache.cassandra.db.Clustering clustering
        start local 3 // org.apache.cassandra.cql3.UpdateParameters params
         0: .line 54
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.DeleteStatement.getRegularOperations:()Ljava/util/List;
            astore 4 /* regularDeletions */
        start local 4 // java.util.List regularDeletions
         1: .line 55
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.DeleteStatement.getStaticOperations:()Ljava/util/List;
            astore 5 /* staticDeletions */
        start local 5 // java.util.List staticDeletions
         2: .line 57
            aload 4 /* regularDeletions */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 13
            aload 5 /* staticDeletions */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 13
         3: .line 60
            aload 2 /* clustering */
            invokeinterface org.apache.cassandra.db.Clustering.size:()I
            ifne 6
         4: .line 62
            aload 1 /* update */
            aload 3 /* params */
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.deletionTime:()Lorg/apache/cassandra/db/DeletionTime;
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.addPartitionDeletion:(Lorg/apache/cassandra/db/DeletionTime;)V
         5: .line 63
            goto 31
         6: .line 65
      StackMap locals: java.util.List java.util.List
      StackMap stack:
            aload 2 /* clustering */
            invokeinterface org.apache.cassandra.db.Clustering.size:()I
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.DeleteStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.clusteringColumns:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            if_icmpne 11
         7: .line 67
            aload 3 /* params */
            aload 2 /* clustering */
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.newRow:(Lorg/apache/cassandra/db/Clustering;)V
         8: .line 68
            aload 3 /* params */
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.addRowDeletion:()V
         9: .line 69
            aload 1 /* update */
            aload 3 /* params */
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.buildRow:()Lorg/apache/cassandra/db/rows/Row;
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.add:(Lorg/apache/cassandra/db/rows/Row;)V
        10: .line 70
            goto 31
        11: .line 74
      StackMap locals:
      StackMap stack:
            aload 1 /* update */
            aload 3 /* params */
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.DeleteStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            getfield org.apache.cassandra.config.CFMetaData.comparator:Lorg/apache/cassandra/db/ClusteringComparator;
            aload 2 /* clustering */
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.makeRangeTombstone:(Lorg/apache/cassandra/db/ClusteringComparator;Lorg/apache/cassandra/db/Clustering;)Lorg/apache/cassandra/db/RangeTombstone;
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.add:(Lorg/apache/cassandra/db/RangeTombstone;)V
        12: .line 76
            goto 31
        13: .line 79
      StackMap locals:
      StackMap stack:
            aload 4 /* regularDeletions */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 24
        14: .line 84
            aload 2 /* clustering */
            invokeinterface org.apache.cassandra.db.Clustering.size:()I
            ifne 15
            aload 0 /* this */
            getfield org.apache.cassandra.cql3.statements.DeleteStatement.cfm:Lorg/apache/cassandra/config/CFMetaData;
            invokevirtual org.apache.cassandra.config.CFMetaData.clusteringColumns:()Ljava/util/List;
            invokeinterface java.util.List.size:()I
            ifeq 15
            iconst_1
            goto 16
      StackMap locals:
      StackMap stack:
        15: iconst_0
        16: .line 85
      StackMap locals:
      StackMap stack: int
            ldc "Range deletions are not supported for specific columns"
        17: .line 84
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkFalse:(ZLjava/lang/String;)V
        18: .line 87
            aload 3 /* params */
            aload 2 /* clustering */
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.newRow:(Lorg/apache/cassandra/db/Clustering;)V
        19: .line 89
            aload 4 /* regularDeletions */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 22
      StackMap locals: org.apache.cassandra.cql3.statements.DeleteStatement org.apache.cassandra.db.partitions.PartitionUpdate org.apache.cassandra.db.Clustering org.apache.cassandra.cql3.UpdateParameters java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        20: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.Operation
            astore 6 /* op */
        start local 6 // org.apache.cassandra.cql3.Operation op
        21: .line 90
            aload 6 /* op */
            aload 1 /* update */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            aload 3 /* params */
            invokevirtual org.apache.cassandra.cql3.Operation.execute:(Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/cql3/UpdateParameters;)V
        end local 6 // org.apache.cassandra.cql3.Operation op
        22: .line 89
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        23: .line 91
            aload 1 /* update */
            aload 3 /* params */
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.buildRow:()Lorg/apache/cassandra/db/rows/Row;
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.add:(Lorg/apache/cassandra/db/rows/Row;)V
        24: .line 94
      StackMap locals: org.apache.cassandra.cql3.statements.DeleteStatement org.apache.cassandra.db.partitions.PartitionUpdate org.apache.cassandra.db.Clustering org.apache.cassandra.cql3.UpdateParameters java.util.List java.util.List
      StackMap stack:
            aload 5 /* staticDeletions */
            invokeinterface java.util.List.isEmpty:()Z
            ifne 31
        25: .line 96
            aload 3 /* params */
            getstatic org.apache.cassandra.db.Clustering.STATIC_CLUSTERING:Lorg/apache/cassandra/db/Clustering;
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.newRow:(Lorg/apache/cassandra/db/Clustering;)V
        26: .line 97
            aload 5 /* staticDeletions */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 7
            goto 29
      StackMap locals: org.apache.cassandra.cql3.statements.DeleteStatement org.apache.cassandra.db.partitions.PartitionUpdate org.apache.cassandra.db.Clustering org.apache.cassandra.cql3.UpdateParameters java.util.List java.util.List top java.util.Iterator
      StackMap stack:
        27: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.apache.cassandra.cql3.Operation
            astore 6 /* op */
        start local 6 // org.apache.cassandra.cql3.Operation op
        28: .line 98
            aload 6 /* op */
            aload 1 /* update */
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.partitionKey:()Lorg/apache/cassandra/db/DecoratedKey;
            aload 3 /* params */
            invokevirtual org.apache.cassandra.cql3.Operation.execute:(Lorg/apache/cassandra/db/DecoratedKey;Lorg/apache/cassandra/cql3/UpdateParameters;)V
        end local 6 // org.apache.cassandra.cql3.Operation op
        29: .line 97
      StackMap locals:
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 27
        30: .line 99
            aload 1 /* update */
            aload 3 /* params */
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.buildRow:()Lorg/apache/cassandra/db/rows/Row;
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.add:(Lorg/apache/cassandra/db/rows/Row;)V
        31: .line 102
      StackMap locals: org.apache.cassandra.cql3.statements.DeleteStatement org.apache.cassandra.db.partitions.PartitionUpdate org.apache.cassandra.db.Clustering org.apache.cassandra.cql3.UpdateParameters java.util.List java.util.List
      StackMap stack:
            return
        end local 5 // java.util.List staticDeletions
        end local 4 // java.util.List regularDeletions
        end local 3 // org.apache.cassandra.cql3.UpdateParameters params
        end local 2 // org.apache.cassandra.db.Clustering clustering
        end local 1 // org.apache.cassandra.db.partitions.PartitionUpdate update
        end local 0 // org.apache.cassandra.cql3.statements.DeleteStatement this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   32     0              this  Lorg/apache/cassandra/cql3/statements/DeleteStatement;
            0   32     1            update  Lorg/apache/cassandra/db/partitions/PartitionUpdate;
            0   32     2        clustering  Lorg/apache/cassandra/db/Clustering;
            0   32     3            params  Lorg/apache/cassandra/cql3/UpdateParameters;
            1   32     4  regularDeletions  Ljava/util/List<Lorg/apache/cassandra/cql3/Operation;>;
            2   32     5   staticDeletions  Ljava/util/List<Lorg/apache/cassandra/cql3/Operation;>;
           21   22     6                op  Lorg/apache/cassandra/cql3/Operation;
           28   29     6                op  Lorg/apache/cassandra/cql3/Operation;
    Exceptions:
      throws org.apache.cassandra.exceptions.InvalidRequestException
    MethodParameters:
            Name  Flags
      update      
      clustering  
      params      

  public void addUpdateForKey(org.apache.cassandra.db.partitions.PartitionUpdate, org.apache.cassandra.db.Slice, org.apache.cassandra.cql3.UpdateParameters);
    descriptor: (Lorg/apache/cassandra/db/partitions/PartitionUpdate;Lorg/apache/cassandra/db/Slice;Lorg/apache/cassandra/cql3/UpdateParameters;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=4
        start local 0 // org.apache.cassandra.cql3.statements.DeleteStatement this
        start local 1 // org.apache.cassandra.db.partitions.PartitionUpdate update
        start local 2 // org.apache.cassandra.db.Slice slice
        start local 3 // org.apache.cassandra.cql3.UpdateParameters params
         0: .line 107
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.DeleteStatement.getRegularOperations:()Ljava/util/List;
            astore 4 /* regularDeletions */
        start local 4 // java.util.List regularDeletions
         1: .line 108
            aload 0 /* this */
            invokevirtual org.apache.cassandra.cql3.statements.DeleteStatement.getStaticOperations:()Ljava/util/List;
            astore 5 /* staticDeletions */
        start local 5 // java.util.List staticDeletions
         2: .line 110
            aload 4 /* regularDeletions */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 3
            aload 5 /* staticDeletions */
            invokeinterface java.util.List.isEmpty:()Z
            ifeq 3
            iconst_1
            goto 4
      StackMap locals: java.util.List java.util.List
      StackMap stack:
         3: iconst_0
         4: .line 111
      StackMap locals:
      StackMap stack: int
            ldc "Range deletions are not supported for specific columns"
         5: .line 110
            invokestatic org.apache.cassandra.cql3.statements.RequestValidations.checkTrue:(ZLjava/lang/String;)V
         6: .line 113
            aload 1 /* update */
            aload 3 /* params */
            aload 2 /* slice */
            invokevirtual org.apache.cassandra.cql3.UpdateParameters.makeRangeTombstone:(Lorg/apache/cassandra/db/Slice;)Lorg/apache/cassandra/db/RangeTombstone;
            invokevirtual org.apache.cassandra.db.partitions.PartitionUpdate.add:(Lorg/apache/cassandra/db/RangeTombstone;)V
         7: .line 114
            return
        end local 5 // java.util.List staticDeletions
        end local 4 // java.util.List regularDeletions
        end local 3 // org.apache.cassandra.cql3.UpdateParameters params
        end local 2 // org.apache.cassandra.db.Slice slice
        end local 1 // org.apache.cassandra.db.partitions.PartitionUpdate update
        end local 0 // org.apache.cassandra.cql3.statements.DeleteStatement this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lorg/apache/cassandra/cql3/statements/DeleteStatement;
            0    8     1            update  Lorg/apache/cassandra/db/partitions/PartitionUpdate;
            0    8     2             slice  Lorg/apache/cassandra/db/Slice;
            0    8     3            params  Lorg/apache/cassandra/cql3/UpdateParameters;
            1    8     4  regularDeletions  Ljava/util/List<Lorg/apache/cassandra/cql3/Operation;>;
            2    8     5   staticDeletions  Ljava/util/List<Lorg/apache/cassandra/cql3/Operation;>;
    MethodParameters:
        Name  Flags
      update  
      slice   
      params  
}
SourceFile: "DeleteStatement.java"
NestMembers:
  org.apache.cassandra.cql3.statements.DeleteStatement$Parsed
InnerClasses:
  public Parsed = org.apache.cassandra.cql3.statements.DeleteStatement$Parsed of org.apache.cassandra.cql3.statements.DeleteStatement