COMMAND: javap -verbose -classpath build/classes/kotlin/main example.tasks.MainKt
Classfile /home/admin/workspace/my-blogs/examples/kotlin-language/build/classes/kotlin/main/example/tasks/MainKt.class
  Last modified Oct 9, 2026; size 1639 bytes
  SHA-256 checksum 0237c295c5db322a54dfcc5e3eef672fb9154c910cc765d312244a693226a8bd
  Compiled from "Main.kt"
public final class example.tasks.MainKt
  minor version: 0
  major version: 65
  flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: #2                          // example/tasks/MainKt
  super_class: #4                         // java/lang/Object
  interfaces: 0, fields: 0, methods: 2, attributes: 2
Constant pool:
   #1 = Utf8               example/tasks/MainKt
   #2 = Class              #1             // example/tasks/MainKt
   #3 = Utf8               java/lang/Object
   #4 = Class              #3             // java/lang/Object
   #5 = Utf8               submitTask
   #6 = Utf8               ([Ljava/lang/String;)Ljava/lang/String;
   #7 = Utf8               Lorg/jetbrains/annotations/NotNull;
   #8 = Utf8               args
   #9 = String             #8             // args
  #10 = Utf8               kotlin/jvm/internal/Intrinsics
  #11 = Class              #10            // kotlin/jvm/internal/Intrinsics
  #12 = Utf8               checkNotNullParameter
  #13 = Utf8               (Ljava/lang/Object;Ljava/lang/String;)V
  #14 = NameAndType        #12:#13        // checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
  #15 = Methodref          #11.#14        // kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
  #16 = Utf8               submit
  #17 = String             #16            // submit
  #18 = Utf8               areEqual
  #19 = Utf8               (Ljava/lang/Object;Ljava/lang/Object;)Z
  #20 = NameAndType        #18:#19        // areEqual:(Ljava/lang/Object;Ljava/lang/Object;)Z
  #21 = Methodref          #11.#20        // kotlin/jvm/internal/Intrinsics.areEqual:(Ljava/lang/Object;Ljava/lang/Object;)Z
  #22 = Utf8               java/lang/CharSequence
  #23 = Class              #22            // java/lang/CharSequence
  #24 = Utf8               kotlin/text/StringsKt
  #25 = Class              #24            // kotlin/text/StringsKt
  #26 = Utf8               isBlank
  #27 = Utf8               (Ljava/lang/CharSequence;)Z
  #28 = NameAndType        #26:#27        // isBlank:(Ljava/lang/CharSequence;)Z
  #29 = Methodref          #25.#28        // kotlin/text/StringsKt.isBlank:(Ljava/lang/CharSequence;)Z
  #30 = Utf8               Usage: submit <task text>
  #31 = String             #30            // Usage: submit <task text>
  #32 = Utf8               java/lang/IllegalArgumentException
  #33 = Class              #32            // java/lang/IllegalArgumentException
  #34 = Utf8               toString
  #35 = Utf8               ()Ljava/lang/String;
  #36 = NameAndType        #34:#35        // toString:()Ljava/lang/String;
  #37 = Methodref          #4.#36         // java/lang/Object.toString:()Ljava/lang/String;
  #38 = Utf8               <init>
  #39 = Utf8               (Ljava/lang/String;)V
  #40 = NameAndType        #38:#39        // "<init>":(Ljava/lang/String;)V
  #41 = Methodref          #33.#40        // java/lang/IllegalArgumentException."<init>":(Ljava/lang/String;)V
  #42 = Utf8               $i$a$-require-MainKt$submitTask$1
  #43 = Utf8               I
  #44 = Utf8               [Ljava/lang/String;
  #45 = Utf8               main
  #46 = Utf8               ([Ljava/lang/String;)V
  #47 = Utf8               example/tasks/CommandParserKt
  #48 = Class              #47            // example/tasks/CommandParserKt
  #49 = Utf8               parseCommand
  #50 = NameAndType        #49:#6         // parseCommand:([Ljava/lang/String;)Ljava/lang/String;
  #51 = Methodref          #48.#50        // example/tasks/CommandParserKt.parseCommand:([Ljava/lang/String;)Ljava/lang/String;
  #52 = Utf8               java/lang/System
  #53 = Class              #52            // java/lang/System
  #54 = Utf8               out
  #55 = Utf8               Ljava/io/PrintStream;
  #56 = NameAndType        #54:#55        // out:Ljava/io/PrintStream;
  #57 = Fieldref           #53.#56        // java/lang/System.out:Ljava/io/PrintStream;
  #58 = Utf8               java/io/PrintStream
  #59 = Class              #58            // java/io/PrintStream
  #60 = Utf8               println
  #61 = Utf8               (Ljava/lang/Object;)V
  #62 = NameAndType        #60:#61        // println:(Ljava/lang/Object;)V
  #63 = Methodref          #59.#62        // java/io/PrintStream.println:(Ljava/lang/Object;)V
  #64 = Utf8               Lkotlin/Metadata;
  #65 = Utf8               mv
  #66 = Integer            2
  #67 = Integer            0
  #68 = Utf8               k
  #69 = Utf8               xi
  #70 = Integer            48
  #71 = Utf8               d1
  #72 = Utf8               \u0000\u0018\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\u0011\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0002\b\u0002\u001a\u0019\u0010\u0000\u001a\u00020\u00012\f\u0010\u0002\u001a\b\u0012\u0004\u0012\u00020\u00010\u0003¢\u0006\u0002\u0010\u0004\u001a\u0019\u0010\u0005\u001a\u00020\u00062\f\u0010\u0002\u001a\b\u0012\u0004\u0012\u00020\u00010\u0003¢\u0006\u0002\u0010\u0007¨\u0006\b
  #73 = Utf8               d2
  #74 = Utf8
  #75 = Utf8               kotlin-task-language
  #76 = Utf8               Main.kt
  #77 = Utf8               Code
  #78 = Utf8               StackMapTable
  #79 = Utf8               LineNumberTable
  #80 = Utf8               LocalVariableTable
  #81 = Utf8               RuntimeInvisibleAnnotations
  #82 = Utf8               RuntimeInvisibleParameterAnnotations
  #83 = Utf8               SourceFile
  #84 = Utf8               RuntimeVisibleAnnotations
{
  public static final java.lang.String submitTask(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=1
         0: aload_0
         1: ldc           #9                  // String args
         3: invokestatic  #15                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
         6: aload_0
         7: arraylength
         8: iconst_2
         9: if_icmpne     47
        12: aload_0
        13: iconst_0
        14: aaload
        15: ldc           #17                 // String submit
        17: invokestatic  #21                 // Method kotlin/jvm/internal/Intrinsics.areEqual:(Ljava/lang/Object;Ljava/lang/Object;)Z
        20: ifeq          47
        23: aload_0
        24: iconst_1
        25: aaload
        26: checkcast     #23                 // class java/lang/CharSequence
        29: invokestatic  #29                 // Method kotlin/text/StringsKt.isBlank:(Ljava/lang/CharSequence;)Z
        32: ifne          39
        35: iconst_1
        36: goto          40
        39: iconst_0
        40: ifeq          47
        43: iconst_1
        44: goto          48
        47: iconst_0
        48: ifne          68
        51: iconst_0
        52: istore_1
        53: ldc           #31                 // String Usage: submit <task text>
        55: astore_1
        56: new           #33                 // class java/lang/IllegalArgumentException
        59: dup
        60: aload_1
        61: invokevirtual #37                 // Method java/lang/Object.toString:()Ljava/lang/String;
        64: invokespecial #41                 // Method java/lang/IllegalArgumentException."<init>":(Ljava/lang/String;)V
        67: athrow
        68: aload_0
        69: iconst_1
        70: aaload
        71: areturn
      StackMapTable: number_of_entries = 5
        frame_type = 39 /* same */
        frame_type = 64 /* same_locals_1_stack_item */
          stack = [ int ]
        frame_type = 6 /* same */
        frame_type = 64 /* same_locals_1_stack_item */
          stack = [ int ]
        frame_type = 19 /* same */
      LineNumberTable:
        line 4: 6
        line 4: 40
        line 5: 53
        line 4: 55
        line 7: 68
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
           53       2     1 $i$a$-require-MainKt$submitTask$1   I
            0      72     0  args   [Ljava/lang/String;
    RuntimeInvisibleAnnotations:
      0: #7()
        org.jetbrains.annotations.NotNull
    RuntimeInvisibleParameterAnnotations:
      parameter 0:
        0: #7()
          org.jetbrains.annotations.NotNull

  public static final void main(java.lang.String[]);
    descriptor: ([Ljava/lang/String;)V
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Code:
      stack=2, locals=1, args_size=1
         0: aload_0
         1: ldc           #9                  // String args
         3: invokestatic  #15                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
         6: aload_0
         7: invokestatic  #51                 // Method example/tasks/CommandParserKt.parseCommand:([Ljava/lang/String;)Ljava/lang/String;
        10: getstatic     #57                 // Field java/lang/System.out:Ljava/io/PrintStream;
        13: swap
        14: invokevirtual #63                 // Method java/io/PrintStream.println:(Ljava/lang/Object;)V
        17: return
      LineNumberTable:
        line 11: 6
        line 12: 17
      LocalVariableTable:
        Start  Length  Slot  Name   Signature
            0      18     0  args   [Ljava/lang/String;
    RuntimeInvisibleParameterAnnotations:
      parameter 0:
        0: #7()
          org.jetbrains.annotations.NotNull
}
SourceFile: "Main.kt"
RuntimeVisibleAnnotations:
  0: #64(#65=[I#66,I#66,I#67],#68=I#66,#69=I#70,#71=[s#72],#73=[s#5,s#74,s#8,s#74,s#6,s#45,s#74,s#46,s#75])
    kotlin.Metadata(
      mv=[2,2,0]
      k=2
      xi=48
      d1=["\u0000\u0018\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0010\u0011\n\u0002\b\u0002\n\u0002\u0010\u0002\n\u0002\b\u0002\u001a\u0019\u0010\u0000\u001a\u00020\u00012\f\u0010\u0002\u001a\b\u0012\u0004\u0012\u00020\u00010\u0003¢\u0006\u0002\u0010\u0004\u001a\u0019\u0010\u0005\u001a\u00020\u00062\f\u0010\u0002\u001a\b\u0012\u0004\u0012\u00020\u00010\u0003¢\u0006\u0002\u0010\u0007¨\u0006\b"]
      d2=["submitTask","","args","","([Ljava/lang/String;)Ljava/lang/String;","main","","([Ljava/lang/String;)V","kotlin-task-language"]
    )
EXIT_CODE=0
