Skip to content

Instantly share code, notes, and snippets.

@cursive-ide
Last active January 17, 2019 23:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save cursive-ide/56addd4fd34b12bc7c01e107447d7cdf to your computer and use it in GitHub Desktop.
Save cursive-ide/56addd4fd34b12bc7c01e107447d7cdf to your computer and use it in GitHub Desktop.
Clojure JDI problem bytecode before & after
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core$_main.class
Last modified 18/01/2019; size 1271 bytes
MD5 checksum f74ca1f9fccde176d30524a628eaa1ee
Compiled from "core.clj"
public final class cursive_2099.core$_main extends clojure.lang.RestFn
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core$_main
#2 = Class #1 // cursive_2099/core$_main
#3 = Utf8 clojure/lang/RestFn
#4 = Class #3 // clojure/lang/RestFn
#5 = Utf8 core.clj
#6 = Utf8 <init>
#7 = Utf8 ()V
#8 = NameAndType #6:#7 // "<init>":()V
#9 = Methodref #4.#8 // clojure/lang/RestFn."<init>":()V
#10 = Utf8 invokeStatic
#11 = Utf8 (Lclojure/lang/ISeq;)Ljava/lang/Object;
#12 = Utf8 const__0
#13 = Utf8 Lclojure/lang/Var;
#14 = NameAndType #12:#13 // const__0:Lclojure/lang/Var;
#15 = Fieldref #2.#14 // cursive_2099/core$_main.const__0:Lclojure/lang/Var;
#16 = Utf8 clojure/lang/Var
#17 = Class #16 // clojure/lang/Var
#18 = Utf8 getRawRoot
#19 = Utf8 ()Ljava/lang/Object;
#20 = NameAndType #18:#19 // getRawRoot:()Ljava/lang/Object;
#21 = Methodref #17.#20 // clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
#22 = Utf8 clojure/lang/IFn
#23 = Class #22 // clojure/lang/IFn
#24 = Utf8 const__1
#25 = Utf8 Ljava/lang/Object;
#26 = NameAndType #24:#25 // const__1:Ljava/lang/Object;
#27 = Fieldref #2.#26 // cursive_2099/core$_main.const__1:Ljava/lang/Object;
#28 = Utf8 const__2
#29 = NameAndType #28:#25 // const__2:Ljava/lang/Object;
#30 = Fieldref #2.#29 // cursive_2099/core$_main.const__2:Ljava/lang/Object;
#31 = Utf8 invoke
#32 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#33 = NameAndType #31:#32 // invoke:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#34 = InterfaceMethodref #23.#33 // clojure/lang/IFn.invoke:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#35 = Utf8 args
#36 = Utf8 Lclojure/lang/ISeq;
#37 = Utf8 doInvoke
#38 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#39 = Utf8 clojure/lang/ISeq
#40 = Class #39 // clojure/lang/ISeq
#41 = NameAndType #10:#11 // invokeStatic:(Lclojure/lang/ISeq;)Ljava/lang/Object;
#42 = Methodref #2.#41 // cursive_2099/core$_main.invokeStatic:(Lclojure/lang/ISeq;)Ljava/lang/Object;
#43 = Utf8 getRequiredArity
#44 = Utf8 ()I
#45 = Utf8 <clinit>
#46 = Utf8 cursive-2099.core
#47 = String #46 // cursive-2099.core
#48 = Utf8 test
#49 = String #48 // test
#50 = Utf8 clojure/lang/RT
#51 = Class #50 // clojure/lang/RT
#52 = Utf8 var
#53 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#54 = NameAndType #52:#53 // var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#55 = Methodref #51.#54 // clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#56 = Utf8 java/lang/Long
#57 = Class #56 // java/lang/Long
#58 = Utf8 valueOf
#59 = Utf8 (J)Ljava/lang/Long;
#60 = NameAndType #58:#59 // valueOf:(J)Ljava/lang/Long;
#61 = Methodref #57.#60 // java/lang/Long.valueOf:(J)Ljava/lang/Long;
#62 = Long 2l
#64 = Utf8 Code
#65 = Utf8 LineNumberTable
#66 = Utf8 LocalVariableTable
#67 = Utf8 SourceFile
#68 = Utf8 SourceDebugExtension
{
public static final clojure.lang.Var const__0;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.Object const__1;
descriptor: Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.Object const__2;
descriptor: Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public cursive_2099.core$_main();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #9 // Method clojure/lang/RestFn."<init>":()V
4: return
LineNumberTable:
line 8: 0
public static java.lang.Object invokeStatic(clojure.lang.ISeq);
descriptor: (Lclojure/lang/ISeq;)Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
0: getstatic #15 // Field const__0:Lclojure/lang/Var;
3: invokevirtual #21 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
6: checkcast #23 // class clojure/lang/IFn
9: getstatic #27 // Field const__1:Ljava/lang/Object;
12: getstatic #30 // Field const__2:Ljava/lang/Object;
15: invokeinterface #34, 3 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
20: areturn
LineNumberTable:
line 8: 0
line 9: 6
line 9: 15
LocalVariableTable:
Start Length Slot Name Signature
0 20 0 args Lclojure/lang/ISeq;
public java.lang.Object doInvoke(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
0: aload_1
1: checkcast #40 // class clojure/lang/ISeq
4: aconst_null
5: astore_1
6: invokestatic #42 // Method invokeStatic:(Lclojure/lang/ISeq;)Ljava/lang/Object;
9: areturn
LineNumberTable:
line 8: 6
public int getRequiredArity();
descriptor: ()I
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: iconst_0
1: ireturn
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc #47 // String cursive-2099.core
2: ldc #49 // String test
4: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
7: checkcast #17 // class clojure/lang/Var
10: putstatic #15 // Field const__0:Lclojure/lang/Var;
13: lconst_1
14: invokestatic #61 // Method java/lang/Long.valueOf:(J)Ljava/lang/Long;
17: putstatic #27 // Field const__1:Ljava/lang/Object;
20: ldc2_w #62 // long 2l
23: invokestatic #61 // Method java/lang/Long.valueOf:(J)Ljava/lang/Long;
26: putstatic #30 // Field const__2:Ljava/lang/Object;
29: return
LineNumberTable:
line 8: 0
}
SourceFile: "core.clj"
SourceDebugExtension:
SMAP
core.java
Clojure
*S Clojure
*F
+ 1 core.clj
cursive_2099/core.clj
*L
5#1,5:5
*E
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core$fn__1169.class
Last modified 18/01/2019; size 1341 bytes
MD5 checksum e5b4c36a9fa2656bd4da074374096e0a
Compiled from "core.clj"
public final class cursive_2099.core$fn__1169 extends clojure.lang.AFunction
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core$fn__1169
#2 = Class #1 // cursive_2099/core$fn__1169
#3 = Utf8 clojure/lang/AFunction
#4 = Class #3 // clojure/lang/AFunction
#5 = Utf8 core.clj
#6 = Utf8 <init>
#7 = Utf8 ()V
#8 = NameAndType #6:#7 // "<init>":()V
#9 = Methodref #4.#8 // clojure/lang/AFunction."<init>":()V
#10 = Utf8 invokeStatic
#11 = Utf8 ()Ljava/lang/Object;
#12 = Utf8 const__0
#13 = Utf8 Lclojure/lang/Var;
#14 = NameAndType #12:#13 // const__0:Lclojure/lang/Var;
#15 = Fieldref #2.#14 // cursive_2099/core$fn__1169.const__0:Lclojure/lang/Var;
#16 = Utf8 clojure/lang/Var
#17 = Class #16 // clojure/lang/Var
#18 = Utf8 getRawRoot
#19 = NameAndType #18:#11 // getRawRoot:()Ljava/lang/Object;
#20 = Methodref #17.#19 // clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
#21 = Utf8 clojure/lang/IFn
#22 = Class #21 // clojure/lang/IFn
#23 = Utf8 const__1
#24 = NameAndType #23:#13 // const__1:Lclojure/lang/Var;
#25 = Fieldref #2.#24 // cursive_2099/core$fn__1169.const__1:Lclojure/lang/Var;
#26 = Utf8 const__2
#27 = NameAndType #26:#13 // const__2:Lclojure/lang/Var;
#28 = Fieldref #2.#27 // cursive_2099/core$fn__1169.const__2:Lclojure/lang/Var;
#29 = Utf8 invoke
#30 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#31 = NameAndType #29:#30 // invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#32 = InterfaceMethodref #22.#31 // clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#33 = Utf8 const__3
#34 = NameAndType #33:#13 // const__3:Lclojure/lang/Var;
#35 = Fieldref #2.#34 // cursive_2099/core$fn__1169.const__3:Lclojure/lang/Var;
#36 = Utf8 const__4
#37 = Utf8 Lclojure/lang/AFn;
#38 = NameAndType #36:#37 // const__4:Lclojure/lang/AFn;
#39 = Fieldref #2.#38 // cursive_2099/core$fn__1169.const__4:Lclojure/lang/AFn;
#40 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#41 = NameAndType #29:#40 // invoke:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#42 = InterfaceMethodref #22.#41 // clojure/lang/IFn.invoke:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#43 = NameAndType #10:#11 // invokeStatic:()Ljava/lang/Object;
#44 = Methodref #2.#43 // cursive_2099/core$fn__1169.invokeStatic:()Ljava/lang/Object;
#45 = Utf8 <clinit>
#46 = Utf8 clojure.core
#47 = String #46 // clojure.core
#48 = Utf8 commute
#49 = String #48 // commute
#50 = Utf8 clojure/lang/RT
#51 = Class #50 // clojure/lang/RT
#52 = Utf8 var
#53 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#54 = NameAndType #52:#53 // var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#55 = Methodref #51.#54 // clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#56 = Utf8 deref
#57 = String #56 // deref
#58 = Utf8 *loaded-libs*
#59 = String #58 // *loaded-libs*
#60 = Utf8 conj
#61 = String #60 // conj
#62 = Utf8 cursive-2099.core
#63 = String #62 // cursive-2099.core
#64 = Utf8 clojure/lang/Symbol
#65 = Class #64 // clojure/lang/Symbol
#66 = Utf8 intern
#67 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#68 = NameAndType #66:#67 // intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#69 = Methodref #65.#68 // clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#70 = Utf8 clojure/lang/AFn
#71 = Class #70 // clojure/lang/AFn
#72 = Utf8 Code
#73 = Utf8 LineNumberTable
#74 = Utf8 SourceFile
#75 = Utf8 SourceDebugExtension
{
public static final clojure.lang.Var const__0;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__1;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__2;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__3;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__4;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public cursive_2099.core$fn__1169();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #9 // Method clojure/lang/AFunction."<init>":()V
4: return
LineNumberTable:
line 1: 0
public static java.lang.Object invokeStatic();
descriptor: ()Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: getstatic #15 // Field const__0:Lclojure/lang/Var;
3: invokevirtual #20 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
6: checkcast #22 // class clojure/lang/IFn
9: getstatic #25 // Field const__1:Lclojure/lang/Var;
12: invokevirtual #20 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
15: checkcast #22 // class clojure/lang/IFn
18: getstatic #28 // Field const__2:Lclojure/lang/Var;
21: invokeinterface #32, 2 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
26: getstatic #35 // Field const__3:Lclojure/lang/Var;
29: invokevirtual #20 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
32: getstatic #39 // Field const__4:Lclojure/lang/AFn;
35: invokeinterface #42, 4 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
40: areturn
LineNumberTable:
line 1: 0
line 1: 6
line 1: 15
line 1: 21
line 1: 35
public java.lang.Object invoke();
descriptor: ()Ljava/lang/Object;
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: invokestatic #44 // Method invokeStatic:()Ljava/lang/Object;
3: areturn
LineNumberTable:
line 1: 0
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc #47 // String clojure.core
2: ldc #49 // String commute
4: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
7: checkcast #17 // class clojure/lang/Var
10: putstatic #15 // Field const__0:Lclojure/lang/Var;
13: ldc #47 // String clojure.core
15: ldc #57 // String deref
17: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
20: checkcast #17 // class clojure/lang/Var
23: putstatic #25 // Field const__1:Lclojure/lang/Var;
26: ldc #47 // String clojure.core
28: ldc #59 // String *loaded-libs*
30: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
33: checkcast #17 // class clojure/lang/Var
36: putstatic #28 // Field const__2:Lclojure/lang/Var;
39: ldc #47 // String clojure.core
41: ldc #61 // String conj
43: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
46: checkcast #17 // class clojure/lang/Var
49: putstatic #35 // Field const__3:Lclojure/lang/Var;
52: aconst_null
53: ldc #63 // String cursive-2099.core
55: invokestatic #69 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
58: checkcast #71 // class clojure/lang/AFn
61: putstatic #39 // Field const__4:Lclojure/lang/AFn;
64: return
LineNumberTable:
line 1: 0
}
SourceFile: "core.clj"
SourceDebugExtension:
SMAP
core.java
Clojure
*S Clojure
*F
+ 1 core.clj
cursive_2099/core.clj
*L
1#1,1:1
*E
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core$loading__6523__auto____1167.class
Last modified 18/01/2019; size 1577 bytes
MD5 checksum 95079a3add1ad2ea70baaca8572f68a0
Compiled from "core.clj"
public final class cursive_2099.core$loading__6523__auto____1167 extends clojure.lang.AFunction
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core$loading__6523__auto____1167
#2 = Class #1 // cursive_2099/core$loading__6523__auto____1167
#3 = Utf8 clojure/lang/AFunction
#4 = Class #3 // clojure/lang/AFunction
#5 = Utf8 core.clj
#6 = Utf8 <init>
#7 = Utf8 ()V
#8 = NameAndType #6:#7 // "<init>":()V
#9 = Methodref #4.#8 // clojure/lang/AFunction."<init>":()V
#10 = Utf8 invoke
#11 = Utf8 ()Ljava/lang/Object;
#12 = Utf8 java/lang/Object
#13 = Class #12 // java/lang/Object
#14 = Utf8 clojure/lang/Compiler
#15 = Class #14 // clojure/lang/Compiler
#16 = Utf8 LOADER
#17 = Utf8 Lclojure/lang/Var;
#18 = NameAndType #16:#17 // LOADER:Lclojure/lang/Var;
#19 = Fieldref #15.#18 // clojure/lang/Compiler.LOADER:Lclojure/lang/Var;
#20 = Utf8 getClass
#21 = Utf8 ()Ljava/lang/Class;
#22 = NameAndType #20:#21 // getClass:()Ljava/lang/Class;
#23 = Methodref #13.#22 // java/lang/Object.getClass:()Ljava/lang/Class;
#24 = Utf8 java/lang/Class
#25 = Class #24 // java/lang/Class
#26 = Utf8 getClassLoader
#27 = Utf8 ()Ljava/lang/ClassLoader;
#28 = NameAndType #26:#27 // getClassLoader:()Ljava/lang/ClassLoader;
#29 = Methodref #25.#28 // java/lang/Class.getClassLoader:()Ljava/lang/ClassLoader;
#30 = Utf8 clojure/lang/RT
#31 = Class #30 // clojure/lang/RT
#32 = Utf8 mapUniqueKeys
#33 = Utf8 ([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#34 = NameAndType #32:#33 // mapUniqueKeys:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#35 = Methodref #31.#34 // clojure/lang/RT.mapUniqueKeys:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#36 = Utf8 clojure/lang/Associative
#37 = Class #36 // clojure/lang/Associative
#38 = Utf8 clojure/lang/Var
#39 = Class #38 // clojure/lang/Var
#40 = Utf8 pushThreadBindings
#41 = Utf8 (Lclojure/lang/Associative;)V
#42 = NameAndType #40:#41 // pushThreadBindings:(Lclojure/lang/Associative;)V
#43 = Methodref #39.#42 // clojure/lang/Var.pushThreadBindings:(Lclojure/lang/Associative;)V
#44 = Utf8 const__0
#45 = NameAndType #44:#17 // const__0:Lclojure/lang/Var;
#46 = Fieldref #2.#45 // cursive_2099/core$loading__6523__auto____1167.const__0:Lclojure/lang/Var;
#47 = Utf8 getRawRoot
#48 = NameAndType #47:#11 // getRawRoot:()Ljava/lang/Object;
#49 = Methodref #39.#48 // clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
#50 = Utf8 clojure/lang/IFn
#51 = Class #50 // clojure/lang/IFn
#52 = Utf8 const__1
#53 = Utf8 Lclojure/lang/AFn;
#54 = NameAndType #52:#53 // const__1:Lclojure/lang/AFn;
#55 = Fieldref #2.#54 // cursive_2099/core$loading__6523__auto____1167.const__1:Lclojure/lang/AFn;
#56 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#57 = NameAndType #10:#56 // invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#58 = InterfaceMethodref #51.#57 // clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#59 = Utf8 popThreadBindings
#60 = NameAndType #59:#7 // popThreadBindings:()V
#61 = Methodref #39.#60 // clojure/lang/Var.popThreadBindings:()V
#62 = Utf8 this
#63 = Utf8 Ljava/lang/Object;
#64 = Utf8 java/lang/Throwable
#65 = Class #64 // java/lang/Throwable
#66 = Utf8 <clinit>
#67 = Utf8 clojure.core
#68 = String #67 // clojure.core
#69 = Utf8 refer
#70 = String #69 // refer
#71 = Utf8 var
#72 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#73 = NameAndType #71:#72 // var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#74 = Methodref #31.#73 // clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#75 = Utf8 clojure/lang/Symbol
#76 = Class #75 // clojure/lang/Symbol
#77 = Utf8 intern
#78 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#79 = NameAndType #77:#78 // intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#80 = Methodref #76.#79 // clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#81 = Utf8 clojure/lang/AFn
#82 = Class #81 // clojure/lang/AFn
#83 = Utf8 Code
#84 = Utf8 LineNumberTable
#85 = Utf8 StackMapTable
#86 = Utf8 LocalVariableTable
#87 = Utf8 SourceFile
#88 = Utf8 SourceDebugExtension
{
public static final clojure.lang.Var const__0;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__1;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public cursive_2099.core$loading__6523__auto____1167();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #9 // Method clojure/lang/AFunction."<init>":()V
4: return
LineNumberTable:
line 1: 0
public java.lang.Object invoke();
descriptor: ()Ljava/lang/Object;
flags: ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
0: iconst_2
1: anewarray #13 // class java/lang/Object
4: dup
5: iconst_0
6: getstatic #19 // Field clojure/lang/Compiler.LOADER:Lclojure/lang/Var;
9: aastore
10: dup
11: iconst_1
12: aload_0
13: invokevirtual #23 // Method java/lang/Object.getClass:()Ljava/lang/Class;
16: checkcast #25 // class java/lang/Class
19: invokevirtual #29 // Method java/lang/Class.getClassLoader:()Ljava/lang/ClassLoader;
22: aastore
23: invokestatic #35 // Method clojure/lang/RT.mapUniqueKeys:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
26: checkcast #37 // class clojure/lang/Associative
29: invokestatic #43 // Method clojure/lang/Var.pushThreadBindings:(Lclojure/lang/Associative;)V
32: getstatic #46 // Field const__0:Lclojure/lang/Var;
35: invokevirtual #49 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
38: checkcast #51 // class clojure/lang/IFn
41: getstatic #55 // Field const__1:Lclojure/lang/AFn;
44: invokeinterface #58, 2 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
49: astore_1
50: invokestatic #61 // Method clojure/lang/Var.popThreadBindings:()V
53: goto 62
56: astore_2
57: invokestatic #61 // Method clojure/lang/Var.popThreadBindings:()V
60: aload_2
61: athrow
62: aload_1
63: areturn
Exception table:
from to target type
32 50 56 any
StackMapTable: number_of_entries = 2
frame_type = 120 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 252 /* append */
offset_delta = 5
locals = [ class java/lang/Object ]
LineNumberTable:
line 1: 0
line 1: 6
line 1: 13
line 1: 19
line 1: 29
line 1: 38
line 1: 44
line 1: 50
line 1: 57
LocalVariableTable:
Start Length Slot Name Signature
0 63 0 this Ljava/lang/Object;
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc #68 // String clojure.core
2: ldc #70 // String refer
4: invokestatic #74 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
7: checkcast #39 // class clojure/lang/Var
10: putstatic #46 // Field const__0:Lclojure/lang/Var;
13: aconst_null
14: ldc #68 // String clojure.core
16: invokestatic #80 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
19: checkcast #82 // class clojure/lang/AFn
22: putstatic #55 // Field const__1:Lclojure/lang/AFn;
25: return
LineNumberTable:
line 1: 0
}
SourceFile: "core.clj"
SourceDebugExtension:
SMAP
core.java
Clojure
*S Clojure
*F
+ 1 core.clj
cursive_2099/core.clj
*L
1#1,1:1
*E
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core$test.class
Last modified 18/01/2019; size 741 bytes
MD5 checksum 1901dc5500d8efaf189241853c410555
Compiled from "core.clj"
public final class cursive_2099.core$test extends clojure.lang.AFunction
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core$test
#2 = Class #1 // cursive_2099/core$test
#3 = Utf8 clojure/lang/AFunction
#4 = Class #3 // clojure/lang/AFunction
#5 = Utf8 core.clj
#6 = Utf8 <init>
#7 = Utf8 ()V
#8 = NameAndType #6:#7 // "<init>":()V
#9 = Methodref #4.#8 // clojure/lang/AFunction."<init>":()V
#10 = Utf8 invokeStatic
#11 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#12 = Utf8 clojure/lang/Numbers
#13 = Class #12 // clojure/lang/Numbers
#14 = Utf8 add
#15 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Number;
#16 = NameAndType #14:#15 // add:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Number;
#17 = Methodref #13.#16 // clojure/lang/Numbers.add:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Number;
#18 = Utf8 a
#19 = Utf8 Ljava/lang/Object;
#20 = Utf8 b
#21 = Utf8 invoke
#22 = NameAndType #10:#11 // invokeStatic:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#23 = Methodref #2.#22 // cursive_2099/core$test.invokeStatic:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#24 = Utf8 <clinit>
#25 = Utf8 Code
#26 = Utf8 LineNumberTable
#27 = Utf8 LocalVariableTable
#28 = Utf8 SourceFile
#29 = Utf8 SourceDebugExtension
{
public cursive_2099.core$test();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #9 // Method clojure/lang/AFunction."<init>":()V
4: return
LineNumberTable:
line 4: 0
public static java.lang.Object invokeStatic(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
0: aload_0
1: aconst_null
2: astore_0
3: aload_1
4: aconst_null
5: astore_1
6: invokestatic #17 // Method clojure/lang/Numbers.add:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Number;
9: areturn
LineNumberTable:
line 4: 0
line 5: 6
LocalVariableTable:
Start Length Slot Name Signature
0 9 0 a Ljava/lang/Object;
0 9 1 b Ljava/lang/Object;
public java.lang.Object invoke(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
0: aload_1
1: aconst_null
2: astore_1
3: aload_2
4: aconst_null
5: astore_2
6: invokestatic #23 // Method invokeStatic:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
9: areturn
LineNumberTable:
line 4: 6
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=0, locals=0, args_size=0
0: return
LineNumberTable:
line 4: 0
}
SourceFile: "core.clj"
SourceDebugExtension:
SMAP
core.java
Clojure
*S Clojure
*F
+ 1 core.clj
cursive_2099/core.clj
*L
1#1,5:1
*E
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core__init.class
Last modified 18/01/2019; size 3094 bytes
MD5 checksum ac62408f9b7f748d821b8a4fcf45584d
public class cursive_2099.core__init
minor version: 0
major version: 52
flags: ACC_PUBLIC, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core__init
#2 = Class #1 // cursive_2099/core__init
#3 = Utf8 java/lang/Object
#4 = Class #3 // java/lang/Object
#5 = Utf8 load
#6 = Utf8 ()V
#7 = Utf8 const__0
#8 = Utf8 Lclojure/lang/Var;
#9 = NameAndType #7:#8 // const__0:Lclojure/lang/Var;
#10 = Fieldref #2.#9 // cursive_2099/core__init.const__0:Lclojure/lang/Var;
#11 = Utf8 clojure/lang/Var
#12 = Class #11 // clojure/lang/Var
#13 = Utf8 getRawRoot
#14 = Utf8 ()Ljava/lang/Object;
#15 = NameAndType #13:#14 // getRawRoot:()Ljava/lang/Object;
#16 = Methodref #12.#15 // clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
#17 = Utf8 clojure/lang/IFn
#18 = Class #17 // clojure/lang/IFn
#19 = Utf8 const__1
#20 = Utf8 Lclojure/lang/AFn;
#21 = NameAndType #19:#20 // const__1:Lclojure/lang/AFn;
#22 = Fieldref #2.#21 // cursive_2099/core__init.const__1:Lclojure/lang/AFn;
#23 = Utf8 invoke
#24 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#25 = NameAndType #23:#24 // invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#26 = InterfaceMethodref #18.#25 // clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#27 = Utf8 cursive_2099/core$loading__6523__auto____1167
#28 = Class #27 // cursive_2099/core$loading__6523__auto____1167
#29 = Utf8 <init>
#30 = NameAndType #29:#6 // "<init>":()V
#31 = Methodref #28.#30 // cursive_2099/core$loading__6523__auto____1167."<init>":()V
#32 = NameAndType #23:#14 // invoke:()Ljava/lang/Object;
#33 = InterfaceMethodref #18.#32 // clojure/lang/IFn.invoke:()Ljava/lang/Object;
#34 = Utf8 clojure/lang/Symbol
#35 = Class #34 // clojure/lang/Symbol
#36 = Utf8 const__2
#37 = NameAndType #36:#20 // const__2:Lclojure/lang/AFn;
#38 = Fieldref #2.#37 // cursive_2099/core__init.const__2:Lclojure/lang/AFn;
#39 = Utf8 equals
#40 = Utf8 (Ljava/lang/Object;)Z
#41 = NameAndType #39:#40 // equals:(Ljava/lang/Object;)Z
#42 = Methodref #35.#41 // clojure/lang/Symbol.equals:(Ljava/lang/Object;)Z
#43 = Utf8 cursive_2099/core$fn__1169
#44 = Class #43 // cursive_2099/core$fn__1169
#45 = Methodref #44.#30 // cursive_2099/core$fn__1169."<init>":()V
#46 = Utf8 java/util/concurrent/Callable
#47 = Class #46 // java/util/concurrent/Callable
#48 = Utf8 clojure/lang/LockingTransaction
#49 = Class #48 // clojure/lang/LockingTransaction
#50 = Utf8 runInTransaction
#51 = Utf8 (Ljava/util/concurrent/Callable;)Ljava/lang/Object;
#52 = NameAndType #50:#51 // runInTransaction:(Ljava/util/concurrent/Callable;)Ljava/lang/Object;
#53 = Methodref #49.#52 // clojure/lang/LockingTransaction.runInTransaction:(Ljava/util/concurrent/Callable;)Ljava/lang/Object;
#54 = Utf8 const__4
#55 = NameAndType #54:#8 // const__4:Lclojure/lang/Var;
#56 = Fieldref #2.#55 // cursive_2099/core__init.const__4:Lclojure/lang/Var;
#57 = Utf8 ns
#58 = Utf8 Lclojure/lang/Namespace;
#59 = NameAndType #57:#58 // ns:Lclojure/lang/Namespace;
#60 = Fieldref #12.#59 // clojure/lang/Var.ns:Lclojure/lang/Namespace;
#61 = Utf8 sym
#62 = Utf8 Lclojure/lang/Symbol;
#63 = NameAndType #61:#62 // sym:Lclojure/lang/Symbol;
#64 = Fieldref #12.#63 // clojure/lang/Var.sym:Lclojure/lang/Symbol;
#65 = Utf8 clojure/lang/Namespace
#66 = Class #65 // clojure/lang/Namespace
#67 = Utf8 refer
#68 = Utf8 (Lclojure/lang/Symbol;Lclojure/lang/Var;)Lclojure/lang/Var;
#69 = NameAndType #67:#68 // refer:(Lclojure/lang/Symbol;Lclojure/lang/Var;)Lclojure/lang/Var;
#70 = Methodref #66.#69 // clojure/lang/Namespace.refer:(Lclojure/lang/Symbol;Lclojure/lang/Var;)Lclojure/lang/Var;
#71 = Utf8 const__12
#72 = NameAndType #71:#20 // const__12:Lclojure/lang/AFn;
#73 = Fieldref #2.#72 // cursive_2099/core__init.const__12:Lclojure/lang/AFn;
#74 = Utf8 clojure/lang/IPersistentMap
#75 = Class #74 // clojure/lang/IPersistentMap
#76 = Utf8 setMeta
#77 = Utf8 (Lclojure/lang/IPersistentMap;)V
#78 = NameAndType #76:#77 // setMeta:(Lclojure/lang/IPersistentMap;)V
#79 = Methodref #12.#78 // clojure/lang/Var.setMeta:(Lclojure/lang/IPersistentMap;)V
#80 = Utf8 cursive_2099/core$test
#81 = Class #80 // cursive_2099/core$test
#82 = Methodref #81.#30 // cursive_2099/core$test."<init>":()V
#83 = Utf8 bindRoot
#84 = Utf8 (Ljava/lang/Object;)V
#85 = NameAndType #83:#84 // bindRoot:(Ljava/lang/Object;)V
#86 = Methodref #12.#85 // clojure/lang/Var.bindRoot:(Ljava/lang/Object;)V
#87 = Utf8 const__13
#88 = NameAndType #87:#8 // const__13:Lclojure/lang/Var;
#89 = Fieldref #2.#88 // cursive_2099/core__init.const__13:Lclojure/lang/Var;
#90 = Utf8 const__16
#91 = NameAndType #90:#20 // const__16:Lclojure/lang/AFn;
#92 = Fieldref #2.#91 // cursive_2099/core__init.const__16:Lclojure/lang/AFn;
#93 = Utf8 cursive_2099/core$_main
#94 = Class #93 // cursive_2099/core$_main
#95 = Methodref #94.#30 // cursive_2099/core$_main."<init>":()V
#96 = Utf8 java/lang/Throwable
#97 = Class #96 // java/lang/Throwable
#98 = Utf8 __init0
#99 = Utf8 clojure.core
#100 = String #99 // clojure.core
#101 = Utf8 in-ns
#102 = String #101 // in-ns
#103 = Utf8 clojure/lang/RT
#104 = Class #103 // clojure/lang/RT
#105 = Utf8 var
#106 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#107 = NameAndType #105:#106 // var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#108 = Methodref #104.#107 // clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#109 = Utf8 cursive-2099.core
#110 = String #109 // cursive-2099.core
#111 = Utf8 intern
#112 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#113 = NameAndType #111:#112 // intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#114 = Methodref #35.#113 // clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#115 = Utf8 clojure/lang/AFn
#116 = Class #115 // clojure/lang/AFn
#117 = Utf8 test
#118 = String #117 // test
#119 = Utf8 arglists
#120 = String #119 // arglists
#121 = Utf8 keyword
#122 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
#123 = NameAndType #121:#122 // keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
#124 = Methodref #104.#123 // clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
#125 = Utf8 a
#126 = String #125 // a
#127 = Utf8 b
#128 = String #127 // b
#129 = Utf8 clojure/lang/Tuple
#130 = Class #129 // clojure/lang/Tuple
#131 = Utf8 create
#132 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
#133 = NameAndType #131:#132 // create:(Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
#134 = Methodref #130.#133 // clojure/lang/Tuple.create:(Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
#135 = Utf8 java/util/Arrays
#136 = Class #135 // java/util/Arrays
#137 = Utf8 asList
#138 = Utf8 ([Ljava/lang/Object;)Ljava/util/List;
#139 = NameAndType #137:#138 // asList:([Ljava/lang/Object;)Ljava/util/List;
#140 = Methodref #136.#139 // java/util/Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
#141 = Utf8 clojure/lang/PersistentList
#142 = Class #141 // clojure/lang/PersistentList
#143 = Utf8 (Ljava/util/List;)Lclojure/lang/IPersistentList;
#144 = NameAndType #131:#143 // create:(Ljava/util/List;)Lclojure/lang/IPersistentList;
#145 = Methodref #142.#144 // clojure/lang/PersistentList.create:(Ljava/util/List;)Lclojure/lang/IPersistentList;
#146 = Utf8 line
#147 = String #146 // line
#148 = Utf8 java/lang/Integer
#149 = Class #148 // java/lang/Integer
#150 = Utf8 valueOf
#151 = Utf8 (I)Ljava/lang/Integer;
#152 = NameAndType #150:#151 // valueOf:(I)Ljava/lang/Integer;
#153 = Methodref #149.#152 // java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
#154 = Utf8 column
#155 = String #154 // column
#156 = Utf8 file
#157 = String #156 // file
#158 = Utf8 cursive_2099/core.clj
#159 = String #158 // cursive_2099/core.clj
#160 = Utf8 map
#161 = Utf8 ([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#162 = NameAndType #160:#161 // map:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#163 = Methodref #104.#162 // clojure/lang/RT.map:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#164 = Utf8 -main
#165 = String #164 // -main
#166 = Utf8 &
#167 = String #166 // &
#168 = Utf8 args
#169 = String #168 // args
#170 = Utf8 <clinit>
#171 = NameAndType #98:#6 // __init0:()V
#172 = Methodref #2.#171 // cursive_2099/core__init.__init0:()V
#173 = Utf8 cursive_2099.core__init
#174 = String #173 // cursive_2099.core__init
#175 = Utf8 classForName
#176 = Utf8 (Ljava/lang/String;)Ljava/lang/Class;
#177 = NameAndType #175:#176 // classForName:(Ljava/lang/String;)Ljava/lang/Class;
#178 = Methodref #104.#177 // clojure/lang/RT.classForName:(Ljava/lang/String;)Ljava/lang/Class;
#179 = Utf8 java/lang/Class
#180 = Class #179 // java/lang/Class
#181 = Utf8 getClassLoader
#182 = Utf8 ()Ljava/lang/ClassLoader;
#183 = NameAndType #181:#182 // getClassLoader:()Ljava/lang/ClassLoader;
#184 = Methodref #180.#183 // java/lang/Class.getClassLoader:()Ljava/lang/ClassLoader;
#185 = Utf8 clojure/lang/Compiler
#186 = Class #185 // clojure/lang/Compiler
#187 = Utf8 pushNSandLoader
#188 = Utf8 (Ljava/lang/ClassLoader;)V
#189 = NameAndType #187:#188 // pushNSandLoader:(Ljava/lang/ClassLoader;)V
#190 = Methodref #186.#189 // clojure/lang/Compiler.pushNSandLoader:(Ljava/lang/ClassLoader;)V
#191 = NameAndType #5:#6 // load:()V
#192 = Methodref #2.#191 // cursive_2099/core__init.load:()V
#193 = Utf8 popThreadBindings
#194 = NameAndType #193:#6 // popThreadBindings:()V
#195 = Methodref #12.#194 // clojure/lang/Var.popThreadBindings:()V
#196 = Utf8 Code
#197 = Utf8 StackMapTable
#198 = Utf8 LineNumberTable
{
public static final clojure.lang.Var const__0;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__1;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__2;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__4;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__12;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__13;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__16;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static void load();
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=0, args_size=0
0: getstatic #10 // Field const__0:Lclojure/lang/Var;
3: invokevirtual #16 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
6: checkcast #18 // class clojure/lang/IFn
9: getstatic #22 // Field const__1:Lclojure/lang/AFn;
12: invokeinterface #26, 2 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
17: new #28 // class cursive_2099/core$loading__6523__auto____1167
20: dup
21: invokespecial #31 // Method cursive_2099/core$loading__6523__auto____1167."<init>":()V
24: checkcast #18 // class clojure/lang/IFn
27: invokeinterface #33, 1 // InterfaceMethod clojure/lang/IFn.invoke:()Ljava/lang/Object;
32: getstatic #22 // Field const__1:Lclojure/lang/AFn;
35: checkcast #35 // class clojure/lang/Symbol
38: getstatic #38 // Field const__2:Lclojure/lang/AFn;
41: invokevirtual #42 // Method clojure/lang/Symbol.equals:(Ljava/lang/Object;)Z
44: ifeq 52
47: aconst_null
48: goto 67
51: athrow
52: new #44 // class cursive_2099/core$fn__1169
55: dup
56: invokespecial #45 // Method cursive_2099/core$fn__1169."<init>":()V
59: checkcast #47 // class java/util/concurrent/Callable
62: invokestatic #53 // Method clojure/lang/LockingTransaction.runInTransaction:(Ljava/util/concurrent/Callable;)Ljava/lang/Object;
65: pop
66: aconst_null
67: getstatic #56 // Field const__4:Lclojure/lang/Var;
70: dup
71: getfield #60 // Field clojure/lang/Var.ns:Lclojure/lang/Namespace;
74: swap
75: dup
76: getfield #64 // Field clojure/lang/Var.sym:Lclojure/lang/Symbol;
79: swap
80: invokevirtual #70 // Method clojure/lang/Namespace.refer:(Lclojure/lang/Symbol;Lclojure/lang/Var;)Lclojure/lang/Var;
83: dup
84: getstatic #73 // Field const__12:Lclojure/lang/AFn;
87: checkcast #75 // class clojure/lang/IPersistentMap
90: invokevirtual #79 // Method clojure/lang/Var.setMeta:(Lclojure/lang/IPersistentMap;)V
93: dup
94: new #81 // class cursive_2099/core$test
97: dup
98: invokespecial #82 // Method cursive_2099/core$test."<init>":()V
101: invokevirtual #86 // Method clojure/lang/Var.bindRoot:(Ljava/lang/Object;)V
104: getstatic #89 // Field const__13:Lclojure/lang/Var;
107: dup
108: getstatic #92 // Field const__16:Lclojure/lang/AFn;
111: checkcast #75 // class clojure/lang/IPersistentMap
114: invokevirtual #79 // Method clojure/lang/Var.setMeta:(Lclojure/lang/IPersistentMap;)V
117: dup
118: new #94 // class cursive_2099/core$_main
121: dup
122: invokespecial #95 // Method cursive_2099/core$_main."<init>":()V
125: invokevirtual #86 // Method clojure/lang/Var.bindRoot:(Ljava/lang/Object;)V
128: return
StackMapTable: number_of_entries = 3
frame_type = 115 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 255 /* full_frame */
offset_delta = 0
locals = []
stack = [ class java/lang/Object, class java/lang/Object ]
frame_type = 255 /* full_frame */
offset_delta = 14
locals = []
stack = [ class java/lang/Object, class java/lang/Object, null ]
LineNumberTable:
line 1: 6
line 1: 12
line 1: 24
line 1: 27
line 1: 32
line 1: 41
line 1: 62
public static void __init0();
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=0, args_size=0
0: ldc #100 // String clojure.core
2: ldc #102 // String in-ns
4: invokestatic #108 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
7: checkcast #12 // class clojure/lang/Var
10: putstatic #10 // Field const__0:Lclojure/lang/Var;
13: aconst_null
14: ldc #110 // String cursive-2099.core
16: invokestatic #114 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
19: checkcast #116 // class clojure/lang/AFn
22: putstatic #22 // Field const__1:Lclojure/lang/AFn;
25: aconst_null
26: ldc #100 // String clojure.core
28: invokestatic #114 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
31: checkcast #116 // class clojure/lang/AFn
34: putstatic #38 // Field const__2:Lclojure/lang/AFn;
37: ldc #110 // String cursive-2099.core
39: ldc #118 // String test
41: invokestatic #108 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
44: checkcast #12 // class clojure/lang/Var
47: putstatic #56 // Field const__4:Lclojure/lang/Var;
50: bipush 8
52: anewarray #4 // class java/lang/Object
55: dup
56: iconst_0
57: aconst_null
58: ldc #120 // String arglists
60: invokestatic #124 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
63: aastore
64: dup
65: iconst_1
66: iconst_1
67: anewarray #4 // class java/lang/Object
70: dup
71: iconst_0
72: aconst_null
73: ldc #126 // String a
75: invokestatic #114 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
78: aconst_null
79: ldc #128 // String b
81: invokestatic #114 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
84: invokestatic #134 // Method clojure/lang/Tuple.create:(Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
87: aastore
88: invokestatic #140 // Method java/util/Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
91: invokestatic #145 // Method clojure/lang/PersistentList.create:(Ljava/util/List;)Lclojure/lang/IPersistentList;
94: aastore
95: dup
96: iconst_2
97: aconst_null
98: ldc #147 // String line
100: invokestatic #124 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
103: aastore
104: dup
105: iconst_3
106: iconst_4
107: invokestatic #153 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
110: aastore
111: dup
112: iconst_4
113: aconst_null
114: ldc #155 // String column
116: invokestatic #124 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
119: aastore
120: dup
121: iconst_5
122: iconst_1
123: invokestatic #153 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
126: aastore
127: dup
128: bipush 6
130: aconst_null
131: ldc #157 // String file
133: invokestatic #124 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
136: aastore
137: dup
138: bipush 7
140: ldc #159 // String cursive_2099/core.clj
142: aastore
143: invokestatic #163 // Method clojure/lang/RT.map:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
146: checkcast #116 // class clojure/lang/AFn
149: putstatic #73 // Field const__12:Lclojure/lang/AFn;
152: ldc #110 // String cursive-2099.core
154: ldc #165 // String -main
156: invokestatic #108 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
159: checkcast #12 // class clojure/lang/Var
162: putstatic #89 // Field const__13:Lclojure/lang/Var;
165: bipush 8
167: anewarray #4 // class java/lang/Object
170: dup
171: iconst_0
172: aconst_null
173: ldc #120 // String arglists
175: invokestatic #124 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
178: aastore
179: dup
180: iconst_1
181: iconst_1
182: anewarray #4 // class java/lang/Object
185: dup
186: iconst_0
187: aconst_null
188: ldc #167 // String &
190: invokestatic #114 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
193: aconst_null
194: ldc #169 // String args
196: invokestatic #114 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
199: invokestatic #134 // Method clojure/lang/Tuple.create:(Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
202: aastore
203: invokestatic #140 // Method java/util/Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
206: invokestatic #145 // Method clojure/lang/PersistentList.create:(Ljava/util/List;)Lclojure/lang/IPersistentList;
209: aastore
210: dup
211: iconst_2
212: aconst_null
213: ldc #147 // String line
215: invokestatic #124 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
218: aastore
219: dup
220: iconst_3
221: bipush 8
223: invokestatic #153 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
226: aastore
227: dup
228: iconst_4
229: aconst_null
230: ldc #155 // String column
232: invokestatic #124 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
235: aastore
236: dup
237: iconst_5
238: iconst_1
239: invokestatic #153 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
242: aastore
243: dup
244: bipush 6
246: aconst_null
247: ldc #157 // String file
249: invokestatic #124 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
252: aastore
253: dup
254: bipush 7
256: ldc #159 // String cursive_2099/core.clj
258: aastore
259: invokestatic #163 // Method clojure/lang/RT.map:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
262: checkcast #116 // class clojure/lang/AFn
265: putstatic #92 // Field const__16:Lclojure/lang/AFn;
268: return
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic #172 // Method __init0:()V
3: ldc #174 // String cursive_2099.core__init
5: invokestatic #178 // Method clojure/lang/RT.classForName:(Ljava/lang/String;)Ljava/lang/Class;
8: invokevirtual #184 // Method java/lang/Class.getClassLoader:()Ljava/lang/ClassLoader;
11: invokestatic #190 // Method clojure/lang/Compiler.pushNSandLoader:(Ljava/lang/ClassLoader;)V
14: invokestatic #192 // Method load:()V
17: invokestatic #195 // Method clojure/lang/Var.popThreadBindings:()V
20: goto 27
23: invokestatic #195 // Method clojure/lang/Var.popThreadBindings:()V
26: athrow
27: return
Exception table:
from to target type
14 17 23 any
StackMapTable: number_of_entries = 2
frame_type = 87 /* same_locals_1_stack_item */
stack = [ class java/lang/Throwable ]
frame_type = 3 /* same */
}
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core$_main.class
Last modified 18/01/2019; size 1271 bytes
MD5 checksum 3e22396e584700d071b45e9eb47ddbf3
Compiled from "core.clj"
public final class cursive_2099.core$_main extends clojure.lang.RestFn
minor version: 0
major version: 49
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core$_main
#2 = Class #1 // cursive_2099/core$_main
#3 = Utf8 clojure/lang/RestFn
#4 = Class #3 // clojure/lang/RestFn
#5 = Utf8 core.clj
#6 = Utf8 <init>
#7 = Utf8 ()V
#8 = NameAndType #6:#7 // "<init>":()V
#9 = Methodref #4.#8 // clojure/lang/RestFn."<init>":()V
#10 = Utf8 invokeStatic
#11 = Utf8 (Lclojure/lang/ISeq;)Ljava/lang/Object;
#12 = Utf8 const__0
#13 = Utf8 Lclojure/lang/Var;
#14 = NameAndType #12:#13 // const__0:Lclojure/lang/Var;
#15 = Fieldref #2.#14 // cursive_2099/core$_main.const__0:Lclojure/lang/Var;
#16 = Utf8 clojure/lang/Var
#17 = Class #16 // clojure/lang/Var
#18 = Utf8 getRawRoot
#19 = Utf8 ()Ljava/lang/Object;
#20 = NameAndType #18:#19 // getRawRoot:()Ljava/lang/Object;
#21 = Methodref #17.#20 // clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
#22 = Utf8 clojure/lang/IFn
#23 = Class #22 // clojure/lang/IFn
#24 = Utf8 const__1
#25 = Utf8 Ljava/lang/Object;
#26 = NameAndType #24:#25 // const__1:Ljava/lang/Object;
#27 = Fieldref #2.#26 // cursive_2099/core$_main.const__1:Ljava/lang/Object;
#28 = Utf8 const__2
#29 = NameAndType #28:#25 // const__2:Ljava/lang/Object;
#30 = Fieldref #2.#29 // cursive_2099/core$_main.const__2:Ljava/lang/Object;
#31 = Utf8 invoke
#32 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#33 = NameAndType #31:#32 // invoke:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#34 = InterfaceMethodref #23.#33 // clojure/lang/IFn.invoke:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#35 = Utf8 args
#36 = Utf8 Lclojure/lang/ISeq;
#37 = Utf8 doInvoke
#38 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#39 = Utf8 clojure/lang/ISeq
#40 = Class #39 // clojure/lang/ISeq
#41 = NameAndType #10:#11 // invokeStatic:(Lclojure/lang/ISeq;)Ljava/lang/Object;
#42 = Methodref #2.#41 // cursive_2099/core$_main.invokeStatic:(Lclojure/lang/ISeq;)Ljava/lang/Object;
#43 = Utf8 getRequiredArity
#44 = Utf8 ()I
#45 = Utf8 <clinit>
#46 = Utf8 cursive-2099.core
#47 = String #46 // cursive-2099.core
#48 = Utf8 test
#49 = String #48 // test
#50 = Utf8 clojure/lang/RT
#51 = Class #50 // clojure/lang/RT
#52 = Utf8 var
#53 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#54 = NameAndType #52:#53 // var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#55 = Methodref #51.#54 // clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#56 = Utf8 java/lang/Long
#57 = Class #56 // java/lang/Long
#58 = Utf8 valueOf
#59 = Utf8 (J)Ljava/lang/Long;
#60 = NameAndType #58:#59 // valueOf:(J)Ljava/lang/Long;
#61 = Methodref #57.#60 // java/lang/Long.valueOf:(J)Ljava/lang/Long;
#62 = Long 2l
#64 = Utf8 Code
#65 = Utf8 LineNumberTable
#66 = Utf8 LocalVariableTable
#67 = Utf8 SourceFile
#68 = Utf8 SourceDebugExtension
{
public static final clojure.lang.Var const__0;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.Object const__1;
descriptor: Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final java.lang.Object const__2;
descriptor: Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public cursive_2099.core$_main();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #9 // Method clojure/lang/RestFn."<init>":()V
4: return
LineNumberTable:
line 8: 0
public static java.lang.Object invokeStatic(clojure.lang.ISeq);
descriptor: (Lclojure/lang/ISeq;)Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
0: getstatic #15 // Field const__0:Lclojure/lang/Var;
3: invokevirtual #21 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
6: checkcast #23 // class clojure/lang/IFn
9: getstatic #27 // Field const__1:Ljava/lang/Object;
12: getstatic #30 // Field const__2:Ljava/lang/Object;
15: invokeinterface #34, 3 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
20: areturn
LineNumberTable:
line 8: 0
line 9: 6
line 9: 15
LocalVariableTable:
Start Length Slot Name Signature
0 20 0 args Lclojure/lang/ISeq;
public java.lang.Object doInvoke(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
0: aload_1
1: checkcast #40 // class clojure/lang/ISeq
4: aconst_null
5: astore_1
6: invokestatic #42 // Method invokeStatic:(Lclojure/lang/ISeq;)Ljava/lang/Object;
9: areturn
LineNumberTable:
line 8: 6
public int getRequiredArity();
descriptor: ()I
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: iconst_0
1: ireturn
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc #47 // String cursive-2099.core
2: ldc #49 // String test
4: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
7: checkcast #17 // class clojure/lang/Var
10: putstatic #15 // Field const__0:Lclojure/lang/Var;
13: lconst_1
14: invokestatic #61 // Method java/lang/Long.valueOf:(J)Ljava/lang/Long;
17: putstatic #27 // Field const__1:Ljava/lang/Object;
20: ldc2_w #62 // long 2l
23: invokestatic #61 // Method java/lang/Long.valueOf:(J)Ljava/lang/Long;
26: putstatic #30 // Field const__2:Ljava/lang/Object;
29: return
LineNumberTable:
line 8: 0
}
SourceFile: "core.clj"
SourceDebugExtension:
SMAP
core.java
Clojure
*S Clojure
*F
+ 1 core.clj
cursive_2099/core.clj
*L
5#1,5:5
*E
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core$fn__1169.class
Last modified 18/01/2019; size 1341 bytes
MD5 checksum 80827e6ed82220d294b2f8f2acbe24be
Compiled from "core.clj"
public final class cursive_2099.core$fn__1169 extends clojure.lang.AFunction
minor version: 0
major version: 49
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core$fn__1169
#2 = Class #1 // cursive_2099/core$fn__1169
#3 = Utf8 clojure/lang/AFunction
#4 = Class #3 // clojure/lang/AFunction
#5 = Utf8 core.clj
#6 = Utf8 <init>
#7 = Utf8 ()V
#8 = NameAndType #6:#7 // "<init>":()V
#9 = Methodref #4.#8 // clojure/lang/AFunction."<init>":()V
#10 = Utf8 invokeStatic
#11 = Utf8 ()Ljava/lang/Object;
#12 = Utf8 const__0
#13 = Utf8 Lclojure/lang/Var;
#14 = NameAndType #12:#13 // const__0:Lclojure/lang/Var;
#15 = Fieldref #2.#14 // cursive_2099/core$fn__1169.const__0:Lclojure/lang/Var;
#16 = Utf8 clojure/lang/Var
#17 = Class #16 // clojure/lang/Var
#18 = Utf8 getRawRoot
#19 = NameAndType #18:#11 // getRawRoot:()Ljava/lang/Object;
#20 = Methodref #17.#19 // clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
#21 = Utf8 clojure/lang/IFn
#22 = Class #21 // clojure/lang/IFn
#23 = Utf8 const__1
#24 = NameAndType #23:#13 // const__1:Lclojure/lang/Var;
#25 = Fieldref #2.#24 // cursive_2099/core$fn__1169.const__1:Lclojure/lang/Var;
#26 = Utf8 const__2
#27 = NameAndType #26:#13 // const__2:Lclojure/lang/Var;
#28 = Fieldref #2.#27 // cursive_2099/core$fn__1169.const__2:Lclojure/lang/Var;
#29 = Utf8 invoke
#30 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#31 = NameAndType #29:#30 // invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#32 = InterfaceMethodref #22.#31 // clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#33 = Utf8 const__3
#34 = NameAndType #33:#13 // const__3:Lclojure/lang/Var;
#35 = Fieldref #2.#34 // cursive_2099/core$fn__1169.const__3:Lclojure/lang/Var;
#36 = Utf8 const__4
#37 = Utf8 Lclojure/lang/AFn;
#38 = NameAndType #36:#37 // const__4:Lclojure/lang/AFn;
#39 = Fieldref #2.#38 // cursive_2099/core$fn__1169.const__4:Lclojure/lang/AFn;
#40 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#41 = NameAndType #29:#40 // invoke:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#42 = InterfaceMethodref #22.#41 // clojure/lang/IFn.invoke:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#43 = NameAndType #10:#11 // invokeStatic:()Ljava/lang/Object;
#44 = Methodref #2.#43 // cursive_2099/core$fn__1169.invokeStatic:()Ljava/lang/Object;
#45 = Utf8 <clinit>
#46 = Utf8 clojure.core
#47 = String #46 // clojure.core
#48 = Utf8 commute
#49 = String #48 // commute
#50 = Utf8 clojure/lang/RT
#51 = Class #50 // clojure/lang/RT
#52 = Utf8 var
#53 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#54 = NameAndType #52:#53 // var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#55 = Methodref #51.#54 // clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#56 = Utf8 deref
#57 = String #56 // deref
#58 = Utf8 *loaded-libs*
#59 = String #58 // *loaded-libs*
#60 = Utf8 conj
#61 = String #60 // conj
#62 = Utf8 cursive-2099.core
#63 = String #62 // cursive-2099.core
#64 = Utf8 clojure/lang/Symbol
#65 = Class #64 // clojure/lang/Symbol
#66 = Utf8 intern
#67 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#68 = NameAndType #66:#67 // intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#69 = Methodref #65.#68 // clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#70 = Utf8 clojure/lang/AFn
#71 = Class #70 // clojure/lang/AFn
#72 = Utf8 Code
#73 = Utf8 LineNumberTable
#74 = Utf8 SourceFile
#75 = Utf8 SourceDebugExtension
{
public static final clojure.lang.Var const__0;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__1;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__2;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__3;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__4;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public cursive_2099.core$fn__1169();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #9 // Method clojure/lang/AFunction."<init>":()V
4: return
LineNumberTable:
line 1: 0
public static java.lang.Object invokeStatic();
descriptor: ()Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: getstatic #15 // Field const__0:Lclojure/lang/Var;
3: invokevirtual #20 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
6: checkcast #22 // class clojure/lang/IFn
9: getstatic #25 // Field const__1:Lclojure/lang/Var;
12: invokevirtual #20 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
15: checkcast #22 // class clojure/lang/IFn
18: getstatic #28 // Field const__2:Lclojure/lang/Var;
21: invokeinterface #32, 2 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
26: getstatic #35 // Field const__3:Lclojure/lang/Var;
29: invokevirtual #20 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
32: getstatic #39 // Field const__4:Lclojure/lang/AFn;
35: invokeinterface #42, 4 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
40: areturn
LineNumberTable:
line 1: 0
line 1: 6
line 1: 15
line 1: 21
line 1: 35
public java.lang.Object invoke();
descriptor: ()Ljava/lang/Object;
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: invokestatic #44 // Method invokeStatic:()Ljava/lang/Object;
3: areturn
LineNumberTable:
line 1: 0
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc #47 // String clojure.core
2: ldc #49 // String commute
4: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
7: checkcast #17 // class clojure/lang/Var
10: putstatic #15 // Field const__0:Lclojure/lang/Var;
13: ldc #47 // String clojure.core
15: ldc #57 // String deref
17: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
20: checkcast #17 // class clojure/lang/Var
23: putstatic #25 // Field const__1:Lclojure/lang/Var;
26: ldc #47 // String clojure.core
28: ldc #59 // String *loaded-libs*
30: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
33: checkcast #17 // class clojure/lang/Var
36: putstatic #28 // Field const__2:Lclojure/lang/Var;
39: ldc #47 // String clojure.core
41: ldc #61 // String conj
43: invokestatic #55 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
46: checkcast #17 // class clojure/lang/Var
49: putstatic #35 // Field const__3:Lclojure/lang/Var;
52: aconst_null
53: ldc #63 // String cursive-2099.core
55: invokestatic #69 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
58: checkcast #71 // class clojure/lang/AFn
61: putstatic #39 // Field const__4:Lclojure/lang/AFn;
64: return
LineNumberTable:
line 1: 0
}
SourceFile: "core.clj"
SourceDebugExtension:
SMAP
core.java
Clojure
*S Clojure
*F
+ 1 core.clj
cursive_2099/core.clj
*L
1#1,1:1
*E
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core$loading__6523__auto____1167.class
Last modified 18/01/2019; size 1518 bytes
MD5 checksum 82be4d99daf35ff63826263a032bccc8
Compiled from "core.clj"
public final class cursive_2099.core$loading__6523__auto____1167 extends clojure.lang.AFunction
minor version: 0
major version: 49
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core$loading__6523__auto____1167
#2 = Class #1 // cursive_2099/core$loading__6523__auto____1167
#3 = Utf8 clojure/lang/AFunction
#4 = Class #3 // clojure/lang/AFunction
#5 = Utf8 core.clj
#6 = Utf8 <init>
#7 = Utf8 ()V
#8 = NameAndType #6:#7 // "<init>":()V
#9 = Methodref #4.#8 // clojure/lang/AFunction."<init>":()V
#10 = Utf8 invoke
#11 = Utf8 ()Ljava/lang/Object;
#12 = Utf8 java/lang/Object
#13 = Class #12 // java/lang/Object
#14 = Utf8 clojure/lang/Compiler
#15 = Class #14 // clojure/lang/Compiler
#16 = Utf8 LOADER
#17 = Utf8 Lclojure/lang/Var;
#18 = NameAndType #16:#17 // LOADER:Lclojure/lang/Var;
#19 = Fieldref #15.#18 // clojure/lang/Compiler.LOADER:Lclojure/lang/Var;
#20 = Utf8 getClass
#21 = Utf8 ()Ljava/lang/Class;
#22 = NameAndType #20:#21 // getClass:()Ljava/lang/Class;
#23 = Methodref #13.#22 // java/lang/Object.getClass:()Ljava/lang/Class;
#24 = Utf8 java/lang/Class
#25 = Class #24 // java/lang/Class
#26 = Utf8 getClassLoader
#27 = Utf8 ()Ljava/lang/ClassLoader;
#28 = NameAndType #26:#27 // getClassLoader:()Ljava/lang/ClassLoader;
#29 = Methodref #25.#28 // java/lang/Class.getClassLoader:()Ljava/lang/ClassLoader;
#30 = Utf8 clojure/lang/RT
#31 = Class #30 // clojure/lang/RT
#32 = Utf8 mapUniqueKeys
#33 = Utf8 ([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#34 = NameAndType #32:#33 // mapUniqueKeys:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#35 = Methodref #31.#34 // clojure/lang/RT.mapUniqueKeys:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#36 = Utf8 clojure/lang/Associative
#37 = Class #36 // clojure/lang/Associative
#38 = Utf8 clojure/lang/Var
#39 = Class #38 // clojure/lang/Var
#40 = Utf8 pushThreadBindings
#41 = Utf8 (Lclojure/lang/Associative;)V
#42 = NameAndType #40:#41 // pushThreadBindings:(Lclojure/lang/Associative;)V
#43 = Methodref #39.#42 // clojure/lang/Var.pushThreadBindings:(Lclojure/lang/Associative;)V
#44 = Utf8 const__0
#45 = NameAndType #44:#17 // const__0:Lclojure/lang/Var;
#46 = Fieldref #2.#45 // cursive_2099/core$loading__6523__auto____1167.const__0:Lclojure/lang/Var;
#47 = Utf8 getRawRoot
#48 = NameAndType #47:#11 // getRawRoot:()Ljava/lang/Object;
#49 = Methodref #39.#48 // clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
#50 = Utf8 clojure/lang/IFn
#51 = Class #50 // clojure/lang/IFn
#52 = Utf8 const__1
#53 = Utf8 Lclojure/lang/AFn;
#54 = NameAndType #52:#53 // const__1:Lclojure/lang/AFn;
#55 = Fieldref #2.#54 // cursive_2099/core$loading__6523__auto____1167.const__1:Lclojure/lang/AFn;
#56 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#57 = NameAndType #10:#56 // invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#58 = InterfaceMethodref #51.#57 // clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#59 = Utf8 popThreadBindings
#60 = NameAndType #59:#7 // popThreadBindings:()V
#61 = Methodref #39.#60 // clojure/lang/Var.popThreadBindings:()V
#62 = Utf8 this
#63 = Utf8 Ljava/lang/Object;
#64 = Utf8 <clinit>
#65 = Utf8 clojure.core
#66 = String #65 // clojure.core
#67 = Utf8 refer
#68 = String #67 // refer
#69 = Utf8 var
#70 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#71 = NameAndType #69:#70 // var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#72 = Methodref #31.#71 // clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#73 = Utf8 clojure/lang/Symbol
#74 = Class #73 // clojure/lang/Symbol
#75 = Utf8 intern
#76 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#77 = NameAndType #75:#76 // intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#78 = Methodref #74.#77 // clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#79 = Utf8 clojure/lang/AFn
#80 = Class #79 // clojure/lang/AFn
#81 = Utf8 Code
#82 = Utf8 LineNumberTable
#83 = Utf8 LocalVariableTable
#84 = Utf8 SourceFile
#85 = Utf8 SourceDebugExtension
{
public static final clojure.lang.Var const__0;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__1;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public cursive_2099.core$loading__6523__auto____1167();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #9 // Method clojure/lang/AFunction."<init>":()V
4: return
LineNumberTable:
line 1: 0
public java.lang.Object invoke();
descriptor: ()Ljava/lang/Object;
flags: ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
0: iconst_2
1: anewarray #13 // class java/lang/Object
4: dup
5: iconst_0
6: getstatic #19 // Field clojure/lang/Compiler.LOADER:Lclojure/lang/Var;
9: aastore
10: dup
11: iconst_1
12: aload_0
13: invokevirtual #23 // Method java/lang/Object.getClass:()Ljava/lang/Class;
16: checkcast #25 // class java/lang/Class
19: invokevirtual #29 // Method java/lang/Class.getClassLoader:()Ljava/lang/ClassLoader;
22: aastore
23: invokestatic #35 // Method clojure/lang/RT.mapUniqueKeys:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
26: checkcast #37 // class clojure/lang/Associative
29: invokestatic #43 // Method clojure/lang/Var.pushThreadBindings:(Lclojure/lang/Associative;)V
32: getstatic #46 // Field const__0:Lclojure/lang/Var;
35: invokevirtual #49 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
38: checkcast #51 // class clojure/lang/IFn
41: getstatic #55 // Field const__1:Lclojure/lang/AFn;
44: invokeinterface #58, 2 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
49: astore_1
50: invokestatic #61 // Method clojure/lang/Var.popThreadBindings:()V
53: goto 62
56: astore_2
57: invokestatic #61 // Method clojure/lang/Var.popThreadBindings:()V
60: aload_2
61: athrow
62: aload_1
63: areturn
Exception table:
from to target type
32 50 56 any
LineNumberTable:
line 1: 0
line 1: 6
line 1: 13
line 1: 19
line 1: 29
line 1: 38
line 1: 44
line 1: 50
line 1: 57
LocalVariableTable:
Start Length Slot Name Signature
0 63 0 this Ljava/lang/Object;
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc #66 // String clojure.core
2: ldc #68 // String refer
4: invokestatic #72 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
7: checkcast #39 // class clojure/lang/Var
10: putstatic #46 // Field const__0:Lclojure/lang/Var;
13: aconst_null
14: ldc #66 // String clojure.core
16: invokestatic #78 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
19: checkcast #80 // class clojure/lang/AFn
22: putstatic #55 // Field const__1:Lclojure/lang/AFn;
25: return
LineNumberTable:
line 1: 0
}
SourceFile: "core.clj"
SourceDebugExtension:
SMAP
core.java
Clojure
*S Clojure
*F
+ 1 core.clj
cursive_2099/core.clj
*L
1#1,1:1
*E
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core$test.class
Last modified 18/01/2019; size 741 bytes
MD5 checksum f89e968faa01ab816006ebd8410dac22
Compiled from "core.clj"
public final class cursive_2099.core$test extends clojure.lang.AFunction
minor version: 0
major version: 49
flags: ACC_PUBLIC, ACC_FINAL, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core$test
#2 = Class #1 // cursive_2099/core$test
#3 = Utf8 clojure/lang/AFunction
#4 = Class #3 // clojure/lang/AFunction
#5 = Utf8 core.clj
#6 = Utf8 <init>
#7 = Utf8 ()V
#8 = NameAndType #6:#7 // "<init>":()V
#9 = Methodref #4.#8 // clojure/lang/AFunction."<init>":()V
#10 = Utf8 invokeStatic
#11 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#12 = Utf8 clojure/lang/Numbers
#13 = Class #12 // clojure/lang/Numbers
#14 = Utf8 add
#15 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Number;
#16 = NameAndType #14:#15 // add:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Number;
#17 = Methodref #13.#16 // clojure/lang/Numbers.add:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Number;
#18 = Utf8 a
#19 = Utf8 Ljava/lang/Object;
#20 = Utf8 b
#21 = Utf8 invoke
#22 = NameAndType #10:#11 // invokeStatic:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#23 = Methodref #2.#22 // cursive_2099/core$test.invokeStatic:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
#24 = Utf8 <clinit>
#25 = Utf8 Code
#26 = Utf8 LineNumberTable
#27 = Utf8 LocalVariableTable
#28 = Utf8 SourceFile
#29 = Utf8 SourceDebugExtension
{
public cursive_2099.core$test();
descriptor: ()V
flags: ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
0: aload_0
1: invokespecial #9 // Method clojure/lang/AFunction."<init>":()V
4: return
LineNumberTable:
line 4: 0
public static java.lang.Object invokeStatic(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
0: aload_0
1: aconst_null
2: astore_0
3: aload_1
4: aconst_null
5: astore_1
6: invokestatic #17 // Method clojure/lang/Numbers.add:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Number;
9: areturn
LineNumberTable:
line 4: 0
line 5: 6
LocalVariableTable:
Start Length Slot Name Signature
0 9 0 a Ljava/lang/Object;
0 9 1 b Ljava/lang/Object;
public java.lang.Object invoke(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
0: aload_1
1: aconst_null
2: astore_1
3: aload_2
4: aconst_null
5: astore_2
6: invokestatic #23 // Method invokeStatic:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
9: areturn
LineNumberTable:
line 4: 6
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=0, locals=0, args_size=0
0: return
LineNumberTable:
line 4: 0
}
SourceFile: "core.clj"
SourceDebugExtension:
SMAP
core.java
Clojure
*S Clojure
*F
+ 1 core.clj
cursive_2099/core.clj
*L
1#1,5:1
*E
Classfile /Users/colin/dev/cursive-2099/classes/cursive_2099/core__init.class
Last modified 18/01/2019; size 3001 bytes
MD5 checksum 86cfd4ed174de65915f32f19a9d82372
public class cursive_2099.core__init
minor version: 0
major version: 49
flags: ACC_PUBLIC, ACC_SUPER
Constant pool:
#1 = Utf8 cursive_2099/core__init
#2 = Class #1 // cursive_2099/core__init
#3 = Utf8 java/lang/Object
#4 = Class #3 // java/lang/Object
#5 = Utf8 load
#6 = Utf8 ()V
#7 = Utf8 const__0
#8 = Utf8 Lclojure/lang/Var;
#9 = NameAndType #7:#8 // const__0:Lclojure/lang/Var;
#10 = Fieldref #2.#9 // cursive_2099/core__init.const__0:Lclojure/lang/Var;
#11 = Utf8 clojure/lang/Var
#12 = Class #11 // clojure/lang/Var
#13 = Utf8 getRawRoot
#14 = Utf8 ()Ljava/lang/Object;
#15 = NameAndType #13:#14 // getRawRoot:()Ljava/lang/Object;
#16 = Methodref #12.#15 // clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
#17 = Utf8 clojure/lang/IFn
#18 = Class #17 // clojure/lang/IFn
#19 = Utf8 const__1
#20 = Utf8 Lclojure/lang/AFn;
#21 = NameAndType #19:#20 // const__1:Lclojure/lang/AFn;
#22 = Fieldref #2.#21 // cursive_2099/core__init.const__1:Lclojure/lang/AFn;
#23 = Utf8 invoke
#24 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
#25 = NameAndType #23:#24 // invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#26 = InterfaceMethodref #18.#25 // clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
#27 = Utf8 cursive_2099/core$loading__6523__auto____1167
#28 = Class #27 // cursive_2099/core$loading__6523__auto____1167
#29 = Utf8 <init>
#30 = NameAndType #29:#6 // "<init>":()V
#31 = Methodref #28.#30 // cursive_2099/core$loading__6523__auto____1167."<init>":()V
#32 = NameAndType #23:#14 // invoke:()Ljava/lang/Object;
#33 = InterfaceMethodref #18.#32 // clojure/lang/IFn.invoke:()Ljava/lang/Object;
#34 = Utf8 clojure/lang/Symbol
#35 = Class #34 // clojure/lang/Symbol
#36 = Utf8 const__2
#37 = NameAndType #36:#20 // const__2:Lclojure/lang/AFn;
#38 = Fieldref #2.#37 // cursive_2099/core__init.const__2:Lclojure/lang/AFn;
#39 = Utf8 equals
#40 = Utf8 (Ljava/lang/Object;)Z
#41 = NameAndType #39:#40 // equals:(Ljava/lang/Object;)Z
#42 = Methodref #35.#41 // clojure/lang/Symbol.equals:(Ljava/lang/Object;)Z
#43 = Utf8 cursive_2099/core$fn__1169
#44 = Class #43 // cursive_2099/core$fn__1169
#45 = Methodref #44.#30 // cursive_2099/core$fn__1169."<init>":()V
#46 = Utf8 java/util/concurrent/Callable
#47 = Class #46 // java/util/concurrent/Callable
#48 = Utf8 clojure/lang/LockingTransaction
#49 = Class #48 // clojure/lang/LockingTransaction
#50 = Utf8 runInTransaction
#51 = Utf8 (Ljava/util/concurrent/Callable;)Ljava/lang/Object;
#52 = NameAndType #50:#51 // runInTransaction:(Ljava/util/concurrent/Callable;)Ljava/lang/Object;
#53 = Methodref #49.#52 // clojure/lang/LockingTransaction.runInTransaction:(Ljava/util/concurrent/Callable;)Ljava/lang/Object;
#54 = Utf8 const__4
#55 = NameAndType #54:#8 // const__4:Lclojure/lang/Var;
#56 = Fieldref #2.#55 // cursive_2099/core__init.const__4:Lclojure/lang/Var;
#57 = Utf8 ns
#58 = Utf8 Lclojure/lang/Namespace;
#59 = NameAndType #57:#58 // ns:Lclojure/lang/Namespace;
#60 = Fieldref #12.#59 // clojure/lang/Var.ns:Lclojure/lang/Namespace;
#61 = Utf8 sym
#62 = Utf8 Lclojure/lang/Symbol;
#63 = NameAndType #61:#62 // sym:Lclojure/lang/Symbol;
#64 = Fieldref #12.#63 // clojure/lang/Var.sym:Lclojure/lang/Symbol;
#65 = Utf8 clojure/lang/Namespace
#66 = Class #65 // clojure/lang/Namespace
#67 = Utf8 refer
#68 = Utf8 (Lclojure/lang/Symbol;Lclojure/lang/Var;)Lclojure/lang/Var;
#69 = NameAndType #67:#68 // refer:(Lclojure/lang/Symbol;Lclojure/lang/Var;)Lclojure/lang/Var;
#70 = Methodref #66.#69 // clojure/lang/Namespace.refer:(Lclojure/lang/Symbol;Lclojure/lang/Var;)Lclojure/lang/Var;
#71 = Utf8 const__12
#72 = NameAndType #71:#20 // const__12:Lclojure/lang/AFn;
#73 = Fieldref #2.#72 // cursive_2099/core__init.const__12:Lclojure/lang/AFn;
#74 = Utf8 clojure/lang/IPersistentMap
#75 = Class #74 // clojure/lang/IPersistentMap
#76 = Utf8 setMeta
#77 = Utf8 (Lclojure/lang/IPersistentMap;)V
#78 = NameAndType #76:#77 // setMeta:(Lclojure/lang/IPersistentMap;)V
#79 = Methodref #12.#78 // clojure/lang/Var.setMeta:(Lclojure/lang/IPersistentMap;)V
#80 = Utf8 cursive_2099/core$test
#81 = Class #80 // cursive_2099/core$test
#82 = Methodref #81.#30 // cursive_2099/core$test."<init>":()V
#83 = Utf8 bindRoot
#84 = Utf8 (Ljava/lang/Object;)V
#85 = NameAndType #83:#84 // bindRoot:(Ljava/lang/Object;)V
#86 = Methodref #12.#85 // clojure/lang/Var.bindRoot:(Ljava/lang/Object;)V
#87 = Utf8 const__13
#88 = NameAndType #87:#8 // const__13:Lclojure/lang/Var;
#89 = Fieldref #2.#88 // cursive_2099/core__init.const__13:Lclojure/lang/Var;
#90 = Utf8 const__16
#91 = NameAndType #90:#20 // const__16:Lclojure/lang/AFn;
#92 = Fieldref #2.#91 // cursive_2099/core__init.const__16:Lclojure/lang/AFn;
#93 = Utf8 cursive_2099/core$_main
#94 = Class #93 // cursive_2099/core$_main
#95 = Methodref #94.#30 // cursive_2099/core$_main."<init>":()V
#96 = Utf8 __init0
#97 = Utf8 clojure.core
#98 = String #97 // clojure.core
#99 = Utf8 in-ns
#100 = String #99 // in-ns
#101 = Utf8 clojure/lang/RT
#102 = Class #101 // clojure/lang/RT
#103 = Utf8 var
#104 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#105 = NameAndType #103:#104 // var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#106 = Methodref #102.#105 // clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
#107 = Utf8 cursive-2099.core
#108 = String #107 // cursive-2099.core
#109 = Utf8 intern
#110 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#111 = NameAndType #109:#110 // intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#112 = Methodref #35.#111 // clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
#113 = Utf8 clojure/lang/AFn
#114 = Class #113 // clojure/lang/AFn
#115 = Utf8 test
#116 = String #115 // test
#117 = Utf8 arglists
#118 = String #117 // arglists
#119 = Utf8 keyword
#120 = Utf8 (Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
#121 = NameAndType #119:#120 // keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
#122 = Methodref #102.#121 // clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
#123 = Utf8 a
#124 = String #123 // a
#125 = Utf8 b
#126 = String #125 // b
#127 = Utf8 clojure/lang/Tuple
#128 = Class #127 // clojure/lang/Tuple
#129 = Utf8 create
#130 = Utf8 (Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
#131 = NameAndType #129:#130 // create:(Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
#132 = Methodref #128.#131 // clojure/lang/Tuple.create:(Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
#133 = Utf8 java/util/Arrays
#134 = Class #133 // java/util/Arrays
#135 = Utf8 asList
#136 = Utf8 ([Ljava/lang/Object;)Ljava/util/List;
#137 = NameAndType #135:#136 // asList:([Ljava/lang/Object;)Ljava/util/List;
#138 = Methodref #134.#137 // java/util/Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
#139 = Utf8 clojure/lang/PersistentList
#140 = Class #139 // clojure/lang/PersistentList
#141 = Utf8 (Ljava/util/List;)Lclojure/lang/IPersistentList;
#142 = NameAndType #129:#141 // create:(Ljava/util/List;)Lclojure/lang/IPersistentList;
#143 = Methodref #140.#142 // clojure/lang/PersistentList.create:(Ljava/util/List;)Lclojure/lang/IPersistentList;
#144 = Utf8 line
#145 = String #144 // line
#146 = Utf8 java/lang/Integer
#147 = Class #146 // java/lang/Integer
#148 = Utf8 valueOf
#149 = Utf8 (I)Ljava/lang/Integer;
#150 = NameAndType #148:#149 // valueOf:(I)Ljava/lang/Integer;
#151 = Methodref #147.#150 // java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
#152 = Utf8 column
#153 = String #152 // column
#154 = Utf8 file
#155 = String #154 // file
#156 = Utf8 cursive_2099/core.clj
#157 = String #156 // cursive_2099/core.clj
#158 = Utf8 map
#159 = Utf8 ([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#160 = NameAndType #158:#159 // map:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#161 = Methodref #102.#160 // clojure/lang/RT.map:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
#162 = Utf8 -main
#163 = String #162 // -main
#164 = Utf8 &
#165 = String #164 // &
#166 = Utf8 args
#167 = String #166 // args
#168 = Utf8 <clinit>
#169 = NameAndType #96:#6 // __init0:()V
#170 = Methodref #2.#169 // cursive_2099/core__init.__init0:()V
#171 = Utf8 cursive_2099.core__init
#172 = String #171 // cursive_2099.core__init
#173 = Utf8 classForName
#174 = Utf8 (Ljava/lang/String;)Ljava/lang/Class;
#175 = NameAndType #173:#174 // classForName:(Ljava/lang/String;)Ljava/lang/Class;
#176 = Methodref #102.#175 // clojure/lang/RT.classForName:(Ljava/lang/String;)Ljava/lang/Class;
#177 = Utf8 java/lang/Class
#178 = Class #177 // java/lang/Class
#179 = Utf8 getClassLoader
#180 = Utf8 ()Ljava/lang/ClassLoader;
#181 = NameAndType #179:#180 // getClassLoader:()Ljava/lang/ClassLoader;
#182 = Methodref #178.#181 // java/lang/Class.getClassLoader:()Ljava/lang/ClassLoader;
#183 = Utf8 clojure/lang/Compiler
#184 = Class #183 // clojure/lang/Compiler
#185 = Utf8 pushNSandLoader
#186 = Utf8 (Ljava/lang/ClassLoader;)V
#187 = NameAndType #185:#186 // pushNSandLoader:(Ljava/lang/ClassLoader;)V
#188 = Methodref #184.#187 // clojure/lang/Compiler.pushNSandLoader:(Ljava/lang/ClassLoader;)V
#189 = NameAndType #5:#6 // load:()V
#190 = Methodref #2.#189 // cursive_2099/core__init.load:()V
#191 = Utf8 popThreadBindings
#192 = NameAndType #191:#6 // popThreadBindings:()V
#193 = Methodref #12.#192 // clojure/lang/Var.popThreadBindings:()V
#194 = Utf8 Code
#195 = Utf8 LineNumberTable
{
public static final clojure.lang.Var const__0;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__1;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__2;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__4;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__12;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.Var const__13;
descriptor: Lclojure/lang/Var;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static final clojure.lang.AFn const__16;
descriptor: Lclojure/lang/AFn;
flags: ACC_PUBLIC, ACC_STATIC, ACC_FINAL
public static void load();
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=0, args_size=0
0: getstatic #10 // Field const__0:Lclojure/lang/Var;
3: invokevirtual #16 // Method clojure/lang/Var.getRawRoot:()Ljava/lang/Object;
6: checkcast #18 // class clojure/lang/IFn
9: getstatic #22 // Field const__1:Lclojure/lang/AFn;
12: invokeinterface #26, 2 // InterfaceMethod clojure/lang/IFn.invoke:(Ljava/lang/Object;)Ljava/lang/Object;
17: new #28 // class cursive_2099/core$loading__6523__auto____1167
20: dup
21: invokespecial #31 // Method cursive_2099/core$loading__6523__auto____1167."<init>":()V
24: checkcast #18 // class clojure/lang/IFn
27: invokeinterface #33, 1 // InterfaceMethod clojure/lang/IFn.invoke:()Ljava/lang/Object;
32: getstatic #22 // Field const__1:Lclojure/lang/AFn;
35: checkcast #35 // class clojure/lang/Symbol
38: getstatic #38 // Field const__2:Lclojure/lang/AFn;
41: invokevirtual #42 // Method clojure/lang/Symbol.equals:(Ljava/lang/Object;)Z
44: ifeq 52
47: aconst_null
48: goto 67
51: pop
52: new #44 // class cursive_2099/core$fn__1169
55: dup
56: invokespecial #45 // Method cursive_2099/core$fn__1169."<init>":()V
59: checkcast #47 // class java/util/concurrent/Callable
62: invokestatic #53 // Method clojure/lang/LockingTransaction.runInTransaction:(Ljava/util/concurrent/Callable;)Ljava/lang/Object;
65: pop
66: aconst_null
67: getstatic #56 // Field const__4:Lclojure/lang/Var;
70: dup
71: getfield #60 // Field clojure/lang/Var.ns:Lclojure/lang/Namespace;
74: swap
75: dup
76: getfield #64 // Field clojure/lang/Var.sym:Lclojure/lang/Symbol;
79: swap
80: invokevirtual #70 // Method clojure/lang/Namespace.refer:(Lclojure/lang/Symbol;Lclojure/lang/Var;)Lclojure/lang/Var;
83: dup
84: getstatic #73 // Field const__12:Lclojure/lang/AFn;
87: checkcast #75 // class clojure/lang/IPersistentMap
90: invokevirtual #79 // Method clojure/lang/Var.setMeta:(Lclojure/lang/IPersistentMap;)V
93: dup
94: new #81 // class cursive_2099/core$test
97: dup
98: invokespecial #82 // Method cursive_2099/core$test."<init>":()V
101: invokevirtual #86 // Method clojure/lang/Var.bindRoot:(Ljava/lang/Object;)V
104: getstatic #89 // Field const__13:Lclojure/lang/Var;
107: dup
108: getstatic #92 // Field const__16:Lclojure/lang/AFn;
111: checkcast #75 // class clojure/lang/IPersistentMap
114: invokevirtual #79 // Method clojure/lang/Var.setMeta:(Lclojure/lang/IPersistentMap;)V
117: dup
118: new #94 // class cursive_2099/core$_main
121: dup
122: invokespecial #95 // Method cursive_2099/core$_main."<init>":()V
125: invokevirtual #86 // Method clojure/lang/Var.bindRoot:(Ljava/lang/Object;)V
128: return
LineNumberTable:
line 1: 6
line 1: 12
line 1: 24
line 1: 27
line 1: 32
line 1: 41
line 1: 62
public static void __init0();
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=9, locals=0, args_size=0
0: ldc #98 // String clojure.core
2: ldc #100 // String in-ns
4: invokestatic #106 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
7: checkcast #12 // class clojure/lang/Var
10: putstatic #10 // Field const__0:Lclojure/lang/Var;
13: aconst_null
14: ldc #108 // String cursive-2099.core
16: invokestatic #112 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
19: checkcast #114 // class clojure/lang/AFn
22: putstatic #22 // Field const__1:Lclojure/lang/AFn;
25: aconst_null
26: ldc #98 // String clojure.core
28: invokestatic #112 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
31: checkcast #114 // class clojure/lang/AFn
34: putstatic #38 // Field const__2:Lclojure/lang/AFn;
37: ldc #108 // String cursive-2099.core
39: ldc #116 // String test
41: invokestatic #106 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
44: checkcast #12 // class clojure/lang/Var
47: putstatic #56 // Field const__4:Lclojure/lang/Var;
50: bipush 8
52: anewarray #4 // class java/lang/Object
55: dup
56: iconst_0
57: aconst_null
58: ldc #118 // String arglists
60: invokestatic #122 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
63: aastore
64: dup
65: iconst_1
66: iconst_1
67: anewarray #4 // class java/lang/Object
70: dup
71: iconst_0
72: aconst_null
73: ldc #124 // String a
75: invokestatic #112 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
78: aconst_null
79: ldc #126 // String b
81: invokestatic #112 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
84: invokestatic #132 // Method clojure/lang/Tuple.create:(Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
87: aastore
88: invokestatic #138 // Method java/util/Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
91: invokestatic #143 // Method clojure/lang/PersistentList.create:(Ljava/util/List;)Lclojure/lang/IPersistentList;
94: aastore
95: dup
96: iconst_2
97: aconst_null
98: ldc #145 // String line
100: invokestatic #122 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
103: aastore
104: dup
105: iconst_3
106: iconst_4
107: invokestatic #151 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
110: aastore
111: dup
112: iconst_4
113: aconst_null
114: ldc #153 // String column
116: invokestatic #122 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
119: aastore
120: dup
121: iconst_5
122: iconst_1
123: invokestatic #151 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
126: aastore
127: dup
128: bipush 6
130: aconst_null
131: ldc #155 // String file
133: invokestatic #122 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
136: aastore
137: dup
138: bipush 7
140: ldc #157 // String cursive_2099/core.clj
142: aastore
143: invokestatic #161 // Method clojure/lang/RT.map:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
146: checkcast #114 // class clojure/lang/AFn
149: putstatic #73 // Field const__12:Lclojure/lang/AFn;
152: ldc #108 // String cursive-2099.core
154: ldc #163 // String -main
156: invokestatic #106 // Method clojure/lang/RT.var:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Var;
159: checkcast #12 // class clojure/lang/Var
162: putstatic #89 // Field const__13:Lclojure/lang/Var;
165: bipush 8
167: anewarray #4 // class java/lang/Object
170: dup
171: iconst_0
172: aconst_null
173: ldc #118 // String arglists
175: invokestatic #122 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
178: aastore
179: dup
180: iconst_1
181: iconst_1
182: anewarray #4 // class java/lang/Object
185: dup
186: iconst_0
187: aconst_null
188: ldc #165 // String &
190: invokestatic #112 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
193: aconst_null
194: ldc #167 // String args
196: invokestatic #112 // Method clojure/lang/Symbol.intern:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Symbol;
199: invokestatic #132 // Method clojure/lang/Tuple.create:(Ljava/lang/Object;Ljava/lang/Object;)Lclojure/lang/IPersistentVector;
202: aastore
203: invokestatic #138 // Method java/util/Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
206: invokestatic #143 // Method clojure/lang/PersistentList.create:(Ljava/util/List;)Lclojure/lang/IPersistentList;
209: aastore
210: dup
211: iconst_2
212: aconst_null
213: ldc #145 // String line
215: invokestatic #122 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
218: aastore
219: dup
220: iconst_3
221: bipush 8
223: invokestatic #151 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
226: aastore
227: dup
228: iconst_4
229: aconst_null
230: ldc #153 // String column
232: invokestatic #122 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
235: aastore
236: dup
237: iconst_5
238: iconst_1
239: invokestatic #151 // Method java/lang/Integer.valueOf:(I)Ljava/lang/Integer;
242: aastore
243: dup
244: bipush 6
246: aconst_null
247: ldc #155 // String file
249: invokestatic #122 // Method clojure/lang/RT.keyword:(Ljava/lang/String;Ljava/lang/String;)Lclojure/lang/Keyword;
252: aastore
253: dup
254: bipush 7
256: ldc #157 // String cursive_2099/core.clj
258: aastore
259: invokestatic #161 // Method clojure/lang/RT.map:([Ljava/lang/Object;)Lclojure/lang/IPersistentMap;
262: checkcast #114 // class clojure/lang/AFn
265: putstatic #92 // Field const__16:Lclojure/lang/AFn;
268: return
public static {};
descriptor: ()V
flags: ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic #170 // Method __init0:()V
3: ldc #172 // String cursive_2099.core__init
5: invokestatic #176 // Method clojure/lang/RT.classForName:(Ljava/lang/String;)Ljava/lang/Class;
8: invokevirtual #182 // Method java/lang/Class.getClassLoader:()Ljava/lang/ClassLoader;
11: invokestatic #188 // Method clojure/lang/Compiler.pushNSandLoader:(Ljava/lang/ClassLoader;)V
14: invokestatic #190 // Method load:()V
17: invokestatic #193 // Method clojure/lang/Var.popThreadBindings:()V
20: goto 27
23: invokestatic #193 // Method clojure/lang/Var.popThreadBindings:()V
26: athrow
27: return
Exception table:
from to target type
14 17 23 any
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment