public class com.sun.codemodel.internal.JForLoop implements com.sun.codemodel.internal.JStatement
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.sun.codemodel.internal.JForLoop
  super_class: java.lang.Object
{
  private java.util.List<java.lang.Object> inits;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Ljava/lang/Object;>;

  private com.sun.codemodel.internal.JExpression test;
    descriptor: Lcom/sun/codemodel/internal/JExpression;
    flags: (0x0002) ACC_PRIVATE

  private java.util.List<com.sun.codemodel.internal.JExpression> updates;
    descriptor: Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/List<Lcom/sun/codemodel/internal/JExpression;>;

  private com.sun.codemodel.internal.JBlock body;
    descriptor: Lcom/sun/codemodel/internal/JBlock;
    flags: (0x0002) ACC_PRIVATE

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JForLoop this
         0: .line 36
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 38
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.codemodel.internal.JForLoop.inits:Ljava/util/List;
         2: .line 39
            aload 0 /* this */
            aconst_null
            putfield com.sun.codemodel.internal.JForLoop.test:Lcom/sun/codemodel/internal/JExpression;
         3: .line 40
            aload 0 /* this */
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            putfield com.sun.codemodel.internal.JForLoop.updates:Ljava/util/List;
         4: .line 41
            aload 0 /* this */
            aconst_null
            putfield com.sun.codemodel.internal.JForLoop.body:Lcom/sun/codemodel/internal/JBlock;
         5: .line 36
            return
        end local 0 // com.sun.codemodel.internal.JForLoop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/codemodel/internal/JForLoop;

  public com.sun.codemodel.internal.JVar init(int, com.sun.codemodel.internal.JType, java.lang.String, com.sun.codemodel.internal.JExpression);
    descriptor: (ILcom/sun/codemodel/internal/JType;Ljava/lang/String;Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JVar;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // com.sun.codemodel.internal.JForLoop this
        start local 1 // int mods
        start local 2 // com.sun.codemodel.internal.JType type
        start local 3 // java.lang.String var
        start local 4 // com.sun.codemodel.internal.JExpression e
         0: .line 44
            new com.sun.codemodel.internal.JVar
            dup
            iload 1 /* mods */
            invokestatic com.sun.codemodel.internal.JMods.forVar:(I)Lcom/sun/codemodel/internal/JMods;
            aload 2 /* type */
            aload 3 /* var */
            aload 4 /* e */
            invokespecial com.sun.codemodel.internal.JVar.<init>:(Lcom/sun/codemodel/internal/JMods;Lcom/sun/codemodel/internal/JType;Ljava/lang/String;Lcom/sun/codemodel/internal/JExpression;)V
            astore 5 /* v */
        start local 5 // com.sun.codemodel.internal.JVar v
         1: .line 45
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.inits:Ljava/util/List;
            aload 5 /* v */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         2: .line 46
            aload 5 /* v */
            areturn
        end local 5 // com.sun.codemodel.internal.JVar v
        end local 4 // com.sun.codemodel.internal.JExpression e
        end local 3 // java.lang.String var
        end local 2 // com.sun.codemodel.internal.JType type
        end local 1 // int mods
        end local 0 // com.sun.codemodel.internal.JForLoop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/codemodel/internal/JForLoop;
            0    3     1  mods  I
            0    3     2  type  Lcom/sun/codemodel/internal/JType;
            0    3     3   var  Ljava/lang/String;
            0    3     4     e  Lcom/sun/codemodel/internal/JExpression;
            1    3     5     v  Lcom/sun/codemodel/internal/JVar;
    MethodParameters:
      Name  Flags
      mods  
      type  
      var   
      e     

  public com.sun.codemodel.internal.JVar init(com.sun.codemodel.internal.JType, java.lang.String, com.sun.codemodel.internal.JExpression);
    descriptor: (Lcom/sun/codemodel/internal/JType;Ljava/lang/String;Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JVar;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // com.sun.codemodel.internal.JForLoop this
        start local 1 // com.sun.codemodel.internal.JType type
        start local 2 // java.lang.String var
        start local 3 // com.sun.codemodel.internal.JExpression e
         0: .line 50
            aload 0 /* this */
            iconst_0
            aload 1 /* type */
            aload 2 /* var */
            aload 3 /* e */
            invokevirtual com.sun.codemodel.internal.JForLoop.init:(ILcom/sun/codemodel/internal/JType;Ljava/lang/String;Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JVar;
            areturn
        end local 3 // com.sun.codemodel.internal.JExpression e
        end local 2 // java.lang.String var
        end local 1 // com.sun.codemodel.internal.JType type
        end local 0 // com.sun.codemodel.internal.JForLoop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/codemodel/internal/JForLoop;
            0    1     1  type  Lcom/sun/codemodel/internal/JType;
            0    1     2   var  Ljava/lang/String;
            0    1     3     e  Lcom/sun/codemodel/internal/JExpression;
    MethodParameters:
      Name  Flags
      type  
      var   
      e     

  public void init(com.sun.codemodel.internal.JVar, com.sun.codemodel.internal.JExpression);
    descriptor: (Lcom/sun/codemodel/internal/JVar;Lcom/sun/codemodel/internal/JExpression;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.codemodel.internal.JForLoop this
        start local 1 // com.sun.codemodel.internal.JVar v
        start local 2 // com.sun.codemodel.internal.JExpression e
         0: .line 54
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.inits:Ljava/util/List;
            aload 1 /* v */
            aload 2 /* e */
            invokestatic com.sun.codemodel.internal.JExpr.assign:(Lcom/sun/codemodel/internal/JAssignmentTarget;Lcom/sun/codemodel/internal/JExpression;)Lcom/sun/codemodel/internal/JExpression;
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 55
            return
        end local 2 // com.sun.codemodel.internal.JExpression e
        end local 1 // com.sun.codemodel.internal.JVar v
        end local 0 // com.sun.codemodel.internal.JForLoop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/codemodel/internal/JForLoop;
            0    2     1     v  Lcom/sun/codemodel/internal/JVar;
            0    2     2     e  Lcom/sun/codemodel/internal/JExpression;
    MethodParameters:
      Name  Flags
      v     
      e     

  public void test(com.sun.codemodel.internal.JExpression);
    descriptor: (Lcom/sun/codemodel/internal/JExpression;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.codemodel.internal.JForLoop this
        start local 1 // com.sun.codemodel.internal.JExpression e
         0: .line 58
            aload 0 /* this */
            aload 1 /* e */
            putfield com.sun.codemodel.internal.JForLoop.test:Lcom/sun/codemodel/internal/JExpression;
         1: .line 59
            return
        end local 1 // com.sun.codemodel.internal.JExpression e
        end local 0 // com.sun.codemodel.internal.JForLoop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/codemodel/internal/JForLoop;
            0    2     1     e  Lcom/sun/codemodel/internal/JExpression;
    MethodParameters:
      Name  Flags
      e     

  public void update(com.sun.codemodel.internal.JExpression);
    descriptor: (Lcom/sun/codemodel/internal/JExpression;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.codemodel.internal.JForLoop this
        start local 1 // com.sun.codemodel.internal.JExpression e
         0: .line 62
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.updates:Ljava/util/List;
            aload 1 /* e */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         1: .line 63
            return
        end local 1 // com.sun.codemodel.internal.JExpression e
        end local 0 // com.sun.codemodel.internal.JForLoop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/codemodel/internal/JForLoop;
            0    2     1     e  Lcom/sun/codemodel/internal/JExpression;
    MethodParameters:
      Name  Flags
      e     

  public com.sun.codemodel.internal.JBlock body();
    descriptor: ()Lcom/sun/codemodel/internal/JBlock;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.sun.codemodel.internal.JForLoop this
         0: .line 66
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.body:Lcom/sun/codemodel/internal/JBlock;
            ifnonnull 1
            aload 0 /* this */
            new com.sun.codemodel.internal.JBlock
            dup
            invokespecial com.sun.codemodel.internal.JBlock.<init>:()V
            putfield com.sun.codemodel.internal.JForLoop.body:Lcom/sun/codemodel/internal/JBlock;
         1: .line 67
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.body:Lcom/sun/codemodel/internal/JBlock;
            areturn
        end local 0 // com.sun.codemodel.internal.JForLoop this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/codemodel/internal/JForLoop;

  public void state(com.sun.codemodel.internal.JFormatter);
    descriptor: (Lcom/sun/codemodel/internal/JFormatter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=2
        start local 0 // com.sun.codemodel.internal.JForLoop this
        start local 1 // com.sun.codemodel.internal.JFormatter f
         0: .line 71
            aload 1 /* f */
            ldc "for ("
            invokevirtual com.sun.codemodel.internal.JFormatter.p:(Ljava/lang/String;)Lcom/sun/codemodel/internal/JFormatter;
            pop
         1: .line 72
            iconst_1
            istore 2 /* first */
        start local 2 // boolean first
         2: .line 73
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.inits:Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 4
            goto 9
      StackMap locals: com.sun.codemodel.internal.JForLoop com.sun.codemodel.internal.JFormatter int top java.util.Iterator
      StackMap stack:
         3: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 3 /* o */
        start local 3 // java.lang.Object o
         4: .line 74
            iload 2 /* first */
            ifne 5
            aload 1 /* f */
            bipush 44
            invokevirtual com.sun.codemodel.internal.JFormatter.p:(C)Lcom/sun/codemodel/internal/JFormatter;
            pop
         5: .line 75
      StackMap locals: com.sun.codemodel.internal.JForLoop com.sun.codemodel.internal.JFormatter int java.lang.Object java.util.Iterator
      StackMap stack:
            aload 3 /* o */
            instanceof com.sun.codemodel.internal.JVar
            ifeq 7
         6: .line 76
            aload 1 /* f */
            aload 3 /* o */
            checkcast com.sun.codemodel.internal.JVar
            invokevirtual com.sun.codemodel.internal.JFormatter.b:(Lcom/sun/codemodel/internal/JVar;)Lcom/sun/codemodel/internal/JFormatter;
            pop
            goto 8
         7: .line 78
      StackMap locals:
      StackMap stack:
            aload 1 /* f */
            aload 3 /* o */
            checkcast com.sun.codemodel.internal.JExpression
            invokevirtual com.sun.codemodel.internal.JFormatter.g:(Lcom/sun/codemodel/internal/JGenerable;)Lcom/sun/codemodel/internal/JFormatter;
            pop
         8: .line 79
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* first */
        end local 3 // java.lang.Object o
         9: .line 73
      StackMap locals: com.sun.codemodel.internal.JForLoop com.sun.codemodel.internal.JFormatter int top java.util.Iterator
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        10: .line 81
            aload 1 /* f */
            bipush 59
            invokevirtual com.sun.codemodel.internal.JFormatter.p:(C)Lcom/sun/codemodel/internal/JFormatter;
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.test:Lcom/sun/codemodel/internal/JExpression;
            invokevirtual com.sun.codemodel.internal.JFormatter.g:(Lcom/sun/codemodel/internal/JGenerable;)Lcom/sun/codemodel/internal/JFormatter;
            bipush 59
            invokevirtual com.sun.codemodel.internal.JFormatter.p:(C)Lcom/sun/codemodel/internal/JFormatter;
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.updates:Ljava/util/List;
            invokevirtual com.sun.codemodel.internal.JFormatter.g:(Ljava/util/Collection;)Lcom/sun/codemodel/internal/JFormatter;
            bipush 41
            invokevirtual com.sun.codemodel.internal.JFormatter.p:(C)Lcom/sun/codemodel/internal/JFormatter;
            pop
        11: .line 82
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.body:Lcom/sun/codemodel/internal/JBlock;
            ifnull 13
        12: .line 83
            aload 1 /* f */
            aload 0 /* this */
            getfield com.sun.codemodel.internal.JForLoop.body:Lcom/sun/codemodel/internal/JBlock;
            invokevirtual com.sun.codemodel.internal.JFormatter.g:(Lcom/sun/codemodel/internal/JGenerable;)Lcom/sun/codemodel/internal/JFormatter;
            invokevirtual com.sun.codemodel.internal.JFormatter.nl:()Lcom/sun/codemodel/internal/JFormatter;
            pop
            goto 14
        13: .line 85
      StackMap locals: com.sun.codemodel.internal.JForLoop com.sun.codemodel.internal.JFormatter int
      StackMap stack:
            aload 1 /* f */
            bipush 59
            invokevirtual com.sun.codemodel.internal.JFormatter.p:(C)Lcom/sun/codemodel/internal/JFormatter;
            invokevirtual com.sun.codemodel.internal.JFormatter.nl:()Lcom/sun/codemodel/internal/JFormatter;
            pop
        14: .line 86
      StackMap locals:
      StackMap stack:
            return
        end local 2 // boolean first
        end local 1 // com.sun.codemodel.internal.JFormatter f
        end local 0 // com.sun.codemodel.internal.JForLoop this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   15     0   this  Lcom/sun/codemodel/internal/JForLoop;
            0   15     1      f  Lcom/sun/codemodel/internal/JFormatter;
            2   15     2  first  Z
            4    9     3      o  Ljava/lang/Object;
    MethodParameters:
      Name  Flags
      f     
}
SourceFile: "JForLoop.java"