COMMAND: javap -p -c -classpath build/classes/kotlin/main example.tasks.TaskId example.tasks.TypedTaskIdKt
Compiled from "TypedTaskId.kt"
public final class example.tasks.TaskId {
  private final java.lang.String value;

  public final java.lang.String getValue();
    Code:
       0: aload_0
       1: getfield      #11                 // Field value:Ljava/lang/String;
       4: areturn

  public static java.lang.String toString-impl(java.lang.String);
    Code:
       0: aload_0
       1: invokedynamic #26,  0             // InvokeDynamic #0:makeConcatWithConstants:(Ljava/lang/String;)Ljava/lang/String;
       6: areturn

  public java.lang.String toString();
    Code:
       0: aload_0
       1: getfield      #11                 // Field value:Ljava/lang/String;
       4: invokestatic  #30                 // Method "toString-impl":(Ljava/lang/String;)Ljava/lang/String;
       7: areturn

  public static int hashCode-impl(java.lang.String);
    Code:
       0: aload_0
       1: invokevirtual #38                 // Method java/lang/String.hashCode:()I
       4: ireturn

  public int hashCode();
    Code:
       0: aload_0
       1: getfield      #11                 // Field value:Ljava/lang/String;
       4: invokestatic  #40                 // Method "hashCode-impl":(Ljava/lang/String;)I
       7: ireturn

  public static boolean equals-impl(java.lang.String, java.lang.Object);
    Code:
       0: aload_1
       1: instanceof    #2                  // class example/tasks/TaskId
       4: ifne          9
       7: iconst_0
       8: ireturn
       9: aload_1
      10: checkcast     #2                  // class example/tasks/TaskId
      13: invokevirtual #45                 // Method "unbox-impl":()Ljava/lang/String;
      16: aload_0
      17: swap
      18: invokestatic  #51                 // Method kotlin/jvm/internal/Intrinsics.areEqual:(Ljava/lang/Object;Ljava/lang/Object;)Z
      21: ifne          26
      24: iconst_0
      25: ireturn
      26: iconst_1
      27: ireturn

  public boolean equals(java.lang.Object);
    Code:
       0: aload_0
       1: getfield      #11                 // Field value:Ljava/lang/String;
       4: aload_1
       5: invokestatic  #57                 // Method "equals-impl":(Ljava/lang/String;Ljava/lang/Object;)Z
       8: ireturn

  private example.tasks.TaskId(java.lang.String);
    Code:
       0: aload_0
       1: invokespecial #62                 // Method java/lang/Object."<init>":()V
       4: aload_0
       5: aload_1
       6: putfield      #11                 // Field value:Ljava/lang/String;
       9: return

  public static java.lang.String constructor-impl(java.lang.String);
    Code:
       0: aload_0
       1: ldc           #64                 // String value
       3: invokestatic  #68                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
       6: aload_0
       7: astore_1
       8: aload_1
       9: checkcast     #70                 // class java/lang/CharSequence
      12: invokestatic  #76                 // Method kotlin/text/StringsKt.isBlank:(Ljava/lang/CharSequence;)Z
      15: ifne          22
      18: iconst_1
      19: goto          23
      22: iconst_0
      23: ifne          43
      26: iconst_0
      27: istore_2
      28: ldc           #78                 // String Task ID must not be blank
      30: astore_2
      31: new           #80                 // class java/lang/IllegalArgumentException
      34: dup
      35: aload_2
      36: invokevirtual #82                 // Method java/lang/Object.toString:()Ljava/lang/String;
      39: invokespecial #84                 // Method java/lang/IllegalArgumentException."<init>":(Ljava/lang/String;)V
      42: athrow
      43: aload_1
      44: areturn

  public static final example.tasks.TaskId box-impl(java.lang.String);
    Code:
       0: new           #2                  // class example/tasks/TaskId
       3: dup
       4: aload_0
       5: invokespecial #89                 // Method "<init>":(Ljava/lang/String;)V
       8: areturn

  public final java.lang.String unbox-impl();
    Code:
       0: aload_0
       1: getfield      #11                 // Field value:Ljava/lang/String;
       4: areturn

  public static final boolean equals-impl0(java.lang.String, java.lang.String);
    Code:
       0: aload_0
       1: aload_1
       2: invokestatic  #51                 // Method kotlin/jvm/internal/Intrinsics.areEqual:(Ljava/lang/Object;Ljava/lang/Object;)Z
       5: ireturn
}
Compiled from "TypedTaskId.kt"
public final class example.tasks.TypedTaskIdKt {
  public static final java.lang.Object submitTyped-W6ZOYFM(example.tasks.TaskStore, java.lang.String, java.lang.String);
    Code:
       0: aload_0
       1: ldc           #9                  // String store
       3: invokestatic  #15                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
       6: aload_1
       7: ldc           #17                 // String $v$c$example-tasks-TaskId$-id$0
       9: invokestatic  #15                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
      12: aload_2
      13: ldc           #19                 // String text
      15: invokestatic  #15                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
      18: aload_0
      19: aload_1
      20: aload_2
      21: invokestatic  #24                 // Method example/tasks/SubmissionDecisionKt.submitValidated:(Lexample/tasks/TaskStore;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
      24: areturn

  public static final <State extends example.tasks.TaskState> State firstStateOfType(java.util.List<? extends example.tasks.TaskState>);
    Code:
       0: aload_0
       1: ldc           #31                 // String states
       3: invokestatic  #15                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
       6: iconst_0
       7: istore_1
       8: aload_0
       9: checkcast     #33                 // class java/lang/Iterable
      12: astore_2
      13: iconst_0
      14: istore_3
      15: aload_2
      16: astore        4
      18: new           #35                 // class java/util/ArrayList
      21: dup
      22: invokespecial #39                 // Method java/util/ArrayList."<init>":()V
      25: checkcast     #41                 // class java/util/Collection
      28: astore        5
      30: iconst_0
      31: istore        6
      33: aload         4
      35: invokeinterface #45,  1           // InterfaceMethod java/lang/Iterable.iterator:()Ljava/util/Iterator;
      40: astore        7
      42: aload         7
      44: invokeinterface #51,  1           // InterfaceMethod java/util/Iterator.hasNext:()Z
      49: ifeq          88
      52: aload         7
      54: invokeinterface #55,  1           // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
      59: astore        8
      61: aload         8
      63: iconst_3
      64: ldc           #57                 // String State
      66: invokestatic  #61                 // Method kotlin/jvm/internal/Intrinsics.reifiedOperationMarker:(ILjava/lang/String;)V
      69: instanceof    #4                  // class java/lang/Object
      72: ifeq          42
      75: aload         5
      77: aload         8
      79: invokeinterface #65,  2           // InterfaceMethod java/util/Collection.add:(Ljava/lang/Object;)Z
      84: pop
      85: goto          42
      88: aload         5
      90: checkcast     #67                 // class java/util/List
      93: nop
      94: invokestatic  #73                 // Method kotlin/collections/CollectionsKt.firstOrNull:(Ljava/util/List;)Ljava/lang/Object;
      97: checkcast     #75                 // class example/tasks/TaskState
     100: areturn

  public static final <Element> boolean isElementType(java.lang.Object);
    Code:
       0: aload_0
       1: ldc           #91                 // String value
       3: invokestatic  #15                 // Method kotlin/jvm/internal/Intrinsics.checkNotNullParameter:(Ljava/lang/Object;Ljava/lang/String;)V
       6: iconst_0
       7: istore_1
       8: aload_0
       9: iconst_3
      10: ldc           #93                 // String Element
      12: invokestatic  #61                 // Method kotlin/jvm/internal/Intrinsics.reifiedOperationMarker:(ILjava/lang/String;)V
      15: instanceof    #4                  // class java/lang/Object
      18: ireturn
}
EXIT_CODE=0
