719 lines
50 KiB
Text
719 lines
50 KiB
Text
Classfile /Users/Shautvast/IdeaProjects/beejava/target/classes/nl/sander/beejava/Compiler.class
|
|
Last modified 19 Nov 2020; size 6572 bytes
|
|
SHA-256 checksum 0fb294ea8b397e1710dc3017a3c9c31e9bbda5f5219ef646af238a9a0aa62e0a
|
|
Compiled from "Compiler.java"
|
|
public class nl.sander.beejava.Compiler
|
|
minor version: 0
|
|
major version: 59
|
|
flags: (0x0021) ACC_PUBLIC, ACC_SUPER
|
|
this_class: #11 // nl/sander/beejava/Compiler
|
|
super_class: #2 // java/lang/Object
|
|
interfaces: 0, fields: 4, methods: 9, attributes: 3
|
|
Constant pool:
|
|
#1 = Methodref #2.#3 // java/lang/Object."<init>":()V
|
|
#2 = Class #4 // java/lang/Object
|
|
#3 = NameAndType #5:#6 // "<init>":()V
|
|
#4 = Utf8 java/lang/Object
|
|
#5 = Utf8 <init>
|
|
#6 = Utf8 ()V
|
|
#7 = Class #8 // nl/sander/beejava/ConstantPoolCreator
|
|
#8 = Utf8 nl/sander/beejava/ConstantPoolCreator
|
|
#9 = Methodref #7.#3 // nl/sander/beejava/ConstantPoolCreator."<init>":()V
|
|
#10 = Fieldref #11.#12 // nl/sander/beejava/Compiler.constantPoolCreator:Lnl/sander/beejava/ConstantPoolCreator;
|
|
#11 = Class #13 // nl/sander/beejava/Compiler
|
|
#12 = NameAndType #14:#15 // constantPoolCreator:Lnl/sander/beejava/ConstantPoolCreator;
|
|
#13 = Utf8 nl/sander/beejava/Compiler
|
|
#14 = Utf8 constantPoolCreator
|
|
#15 = Utf8 Lnl/sander/beejava/ConstantPoolCreator;
|
|
#16 = Fieldref #11.#17 // nl/sander/beejava/Compiler.compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
#17 = NameAndType #18:#19 // compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
#18 = Utf8 compiledClass
|
|
#19 = Utf8 Lnl/sander/beejava/CompiledClass;
|
|
#20 = Class #21 // nl/sander/beejava/ConstantPoolEntryCreator
|
|
#21 = Utf8 nl/sander/beejava/ConstantPoolEntryCreator
|
|
#22 = Methodref #20.#23 // nl/sander/beejava/ConstantPoolEntryCreator."<init>":(Lnl/sander/beejava/CompiledClass;)V
|
|
#23 = NameAndType #5:#24 // "<init>":(Lnl/sander/beejava/CompiledClass;)V
|
|
#24 = Utf8 (Lnl/sander/beejava/CompiledClass;)V
|
|
#25 = Fieldref #11.#26 // nl/sander/beejava/Compiler.constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
#26 = NameAndType #27:#28 // constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
#27 = Utf8 constantPoolEntryCreator
|
|
#28 = Utf8 Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
#29 = Class #30 // nl/sander/beejava/CompiledClass
|
|
#30 = Utf8 nl/sander/beejava/CompiledClass
|
|
#31 = Methodref #29.#32 // nl/sander/beejava/CompiledClass."<init>":(Lnl/sander/beejava/api/BeeSource;)V
|
|
#32 = NameAndType #5:#33 // "<init>":(Lnl/sander/beejava/api/BeeSource;)V
|
|
#33 = Utf8 (Lnl/sander/beejava/api/BeeSource;)V
|
|
#34 = Methodref #11.#23 // nl/sander/beejava/Compiler."<init>":(Lnl/sander/beejava/CompiledClass;)V
|
|
#35 = Methodref #11.#36 // nl/sander/beejava/Compiler.compile:()Lnl/sander/beejava/CompiledClass;
|
|
#36 = NameAndType #37:#38 // compile:()Lnl/sander/beejava/CompiledClass;
|
|
#37 = Utf8 compile
|
|
#38 = Utf8 ()Lnl/sander/beejava/CompiledClass;
|
|
#39 = Methodref #11.#40 // nl/sander/beejava/Compiler.createConstantPool:()Lnl/sander/beejava/constantpool/ConstantPool;
|
|
#40 = NameAndType #41:#42 // createConstantPool:()Lnl/sander/beejava/constantpool/ConstantPool;
|
|
#41 = Utf8 createConstantPool
|
|
#42 = Utf8 ()Lnl/sander/beejava/constantpool/ConstantPool;
|
|
#43 = Methodref #29.#44 // nl/sander/beejava/CompiledClass.setConstantPool:(Lnl/sander/beejava/constantpool/ConstantPool;)V
|
|
#44 = NameAndType #45:#46 // setConstantPool:(Lnl/sander/beejava/constantpool/ConstantPool;)V
|
|
#45 = Utf8 setConstantPool
|
|
#46 = Utf8 (Lnl/sander/beejava/constantpool/ConstantPool;)V
|
|
#47 = Methodref #20.#48 // nl/sander/beejava/ConstantPoolEntryCreator.addInterfaces:()V
|
|
#48 = NameAndType #49:#6 // addInterfaces:()V
|
|
#49 = Utf8 addInterfaces
|
|
#50 = Methodref #20.#51 // nl/sander/beejava/ConstantPoolEntryCreator.addFields:()V
|
|
#51 = NameAndType #52:#6 // addFields:()V
|
|
#52 = Utf8 addFields
|
|
#53 = Methodref #11.#54 // nl/sander/beejava/Compiler.addConstructors:()V
|
|
#54 = NameAndType #55:#6 // addConstructors:()V
|
|
#55 = Utf8 addConstructors
|
|
#56 = Methodref #11.#57 // nl/sander/beejava/Compiler.addMethods:()V
|
|
#57 = NameAndType #58:#6 // addMethods:()V
|
|
#58 = Utf8 addMethods
|
|
#59 = Methodref #29.#60 // nl/sander/beejava/CompiledClass.getSource:()Lnl/sander/beejava/api/BeeSource;
|
|
#60 = NameAndType #61:#62 // getSource:()Lnl/sander/beejava/api/BeeSource;
|
|
#61 = Utf8 getSource
|
|
#62 = Utf8 ()Lnl/sander/beejava/api/BeeSource;
|
|
#63 = Methodref #64.#65 // nl/sander/beejava/api/BeeSource.getConstructors:()Ljava/util/Set;
|
|
#64 = Class #66 // nl/sander/beejava/api/BeeSource
|
|
#65 = NameAndType #67:#68 // getConstructors:()Ljava/util/Set;
|
|
#66 = Utf8 nl/sander/beejava/api/BeeSource
|
|
#67 = Utf8 getConstructors
|
|
#68 = Utf8 ()Ljava/util/Set;
|
|
#69 = InvokeDynamic #0:#70 // #0:accept:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Consumer;
|
|
#70 = NameAndType #71:#72 // accept:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Consumer;
|
|
#71 = Utf8 accept
|
|
#72 = Utf8 (Lnl/sander/beejava/Compiler;)Ljava/util/function/Consumer;
|
|
#73 = InterfaceMethodref #74.#75 // java/util/Set.forEach:(Ljava/util/function/Consumer;)V
|
|
#74 = Class #76 // java/util/Set
|
|
#75 = NameAndType #77:#78 // forEach:(Ljava/util/function/Consumer;)V
|
|
#76 = Utf8 java/util/Set
|
|
#77 = Utf8 forEach
|
|
#78 = Utf8 (Ljava/util/function/Consumer;)V
|
|
#79 = Methodref #64.#80 // nl/sander/beejava/api/BeeSource.getMethods:()Ljava/util/Set;
|
|
#80 = NameAndType #81:#68 // getMethods:()Ljava/util/Set;
|
|
#81 = Utf8 getMethods
|
|
#82 = InvokeDynamic #1:#70 // #1:accept:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Consumer;
|
|
#83 = Methodref #20.#84 // nl/sander/beejava/ConstantPoolEntryCreator.addThisClass:()Lnl/sander/beejava/constantpool/entry/ClassEntry;
|
|
#84 = NameAndType #85:#86 // addThisClass:()Lnl/sander/beejava/constantpool/entry/ClassEntry;
|
|
#85 = Utf8 addThisClass
|
|
#86 = Utf8 ()Lnl/sander/beejava/constantpool/entry/ClassEntry;
|
|
#87 = Methodref #29.#88 // nl/sander/beejava/CompiledClass.setThisClass:(Lnl/sander/beejava/constantpool/entry/ClassEntry;)V
|
|
#88 = NameAndType #89:#90 // setThisClass:(Lnl/sander/beejava/constantpool/entry/ClassEntry;)V
|
|
#89 = Utf8 setThisClass
|
|
#90 = Utf8 (Lnl/sander/beejava/constantpool/entry/ClassEntry;)V
|
|
#91 = String #92 // Code
|
|
#92 = Utf8 Code
|
|
#93 = Methodref #20.#94 // nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateUtf8:(Ljava/lang/String;)Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
#94 = NameAndType #95:#96 // getOrCreateUtf8:(Ljava/lang/String;)Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
#95 = Utf8 getOrCreateUtf8
|
|
#96 = Utf8 (Ljava/lang/String;)Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
#97 = Fieldref #11.#98 // nl/sander/beejava/Compiler.codeAttributeNameEntry:Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
#98 = NameAndType #99:#100 // codeAttributeNameEntry:Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
#99 = Utf8 codeAttributeNameEntry
|
|
#100 = Utf8 Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
#101 = Methodref #29.#102 // nl/sander/beejava/CompiledClass.addConstantPoolEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
#102 = NameAndType #103:#104 // addConstantPoolEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
#103 = Utf8 addConstantPoolEntry
|
|
#104 = Utf8 (Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
#105 = Methodref #29.#106 // nl/sander/beejava/CompiledClass.getConstantTree:()Ljava/util/Set;
|
|
#106 = NameAndType #107:#68 // getConstantTree:()Ljava/util/Set;
|
|
#107 = Utf8 getConstantTree
|
|
#108 = Methodref #7.#109 // nl/sander/beejava/ConstantPoolCreator.createConstantPool:(Ljava/util/Set;)Lnl/sander/beejava/constantpool/ConstantPool;
|
|
#109 = NameAndType #41:#110 // createConstantPool:(Ljava/util/Set;)Lnl/sander/beejava/constantpool/ConstantPool;
|
|
#110 = Utf8 (Ljava/util/Set;)Lnl/sander/beejava/constantpool/ConstantPool;
|
|
#111 = InterfaceMethodref #74.#112 // java/util/Set.stream:()Ljava/util/stream/Stream;
|
|
#112 = NameAndType #113:#114 // stream:()Ljava/util/stream/Stream;
|
|
#113 = Utf8 stream
|
|
#114 = Utf8 ()Ljava/util/stream/Stream;
|
|
#115 = InvokeDynamic #2:#116 // #2:apply:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Function;
|
|
#116 = NameAndType #117:#118 // apply:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Function;
|
|
#117 = Utf8 apply
|
|
#118 = Utf8 (Lnl/sander/beejava/Compiler;)Ljava/util/function/Function;
|
|
#119 = InterfaceMethodref #120.#121 // java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
|
|
#120 = Class #122 // java/util/stream/Stream
|
|
#121 = NameAndType #123:#124 // map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
|
|
#122 = Utf8 java/util/stream/Stream
|
|
#123 = Utf8 map
|
|
#124 = Utf8 (Ljava/util/function/Function;)Ljava/util/stream/Stream;
|
|
#125 = Methodref #126.#127 // java/util/Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
|
|
#126 = Class #128 // java/util/Objects
|
|
#127 = NameAndType #129:#130 // requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
|
|
#128 = Utf8 java/util/Objects
|
|
#129 = Utf8 requireNonNull
|
|
#130 = Utf8 (Ljava/lang/Object;)Ljava/lang/Object;
|
|
#131 = InvokeDynamic #3:#132 // #3:accept:(Lnl/sander/beejava/CompiledClass;)Ljava/util/function/Consumer;
|
|
#132 = NameAndType #71:#133 // accept:(Lnl/sander/beejava/CompiledClass;)Ljava/util/function/Consumer;
|
|
#133 = Utf8 (Lnl/sander/beejava/CompiledClass;)Ljava/util/function/Consumer;
|
|
#134 = InterfaceMethodref #120.#75 // java/util/stream/Stream.forEach:(Ljava/util/function/Consumer;)V
|
|
#135 = InterfaceMethodref #74.#136 // java/util/Set.iterator:()Ljava/util/Iterator;
|
|
#136 = NameAndType #137:#138 // iterator:()Ljava/util/Iterator;
|
|
#137 = Utf8 iterator
|
|
#138 = Utf8 ()Ljava/util/Iterator;
|
|
#139 = InterfaceMethodref #140.#141 // java/util/Iterator.hasNext:()Z
|
|
#140 = Class #142 // java/util/Iterator
|
|
#141 = NameAndType #143:#144 // hasNext:()Z
|
|
#142 = Utf8 java/util/Iterator
|
|
#143 = Utf8 hasNext
|
|
#144 = Utf8 ()Z
|
|
#145 = InterfaceMethodref #140.#146 // java/util/Iterator.next:()Ljava/lang/Object;
|
|
#146 = NameAndType #147:#148 // next:()Ljava/lang/Object;
|
|
#147 = Utf8 next
|
|
#148 = Utf8 ()Ljava/lang/Object;
|
|
#149 = Class #150 // nl/sander/beejava/api/BeeMethod
|
|
#150 = Utf8 nl/sander/beejava/api/BeeMethod
|
|
#151 = Methodref #11.#152 // nl/sander/beejava/Compiler.createMethod:(Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#152 = NameAndType #153:#154 // createMethod:(Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#153 = Utf8 createMethod
|
|
#154 = Utf8 (Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#155 = Methodref #29.#156 // nl/sander/beejava/CompiledClass.addMethod:(Lnl/sander/beejava/classinfo/MethodInfo;)V
|
|
#156 = NameAndType #157:#158 // addMethod:(Lnl/sander/beejava/classinfo/MethodInfo;)V
|
|
#157 = Utf8 addMethod
|
|
#158 = Utf8 (Lnl/sander/beejava/classinfo/MethodInfo;)V
|
|
#159 = Class #160 // nl/sander/beejava/classinfo/MethodInfo
|
|
#160 = Utf8 nl/sander/beejava/classinfo/MethodInfo
|
|
#161 = Methodref #162.#163 // nl/sander/beejava/CodeContainer.getName:()Ljava/lang/String;
|
|
#162 = Class #164 // nl/sander/beejava/CodeContainer
|
|
#163 = NameAndType #165:#166 // getName:()Ljava/lang/String;
|
|
#164 = Utf8 nl/sander/beejava/CodeContainer
|
|
#165 = Utf8 getName
|
|
#166 = Utf8 ()Ljava/lang/String;
|
|
#167 = Methodref #162.#168 // nl/sander/beejava/CodeContainer.getSignature:()Ljava/lang/String;
|
|
#168 = NameAndType #169:#166 // getSignature:()Ljava/lang/String;
|
|
#169 = Utf8 getSignature
|
|
#170 = Methodref #159.#171 // nl/sander/beejava/classinfo/MethodInfo."<init>":(Lnl/sander/beejava/constantpool/entry/Utf8Entry;Lnl/sander/beejava/constantpool/entry/Utf8Entry;)V
|
|
#171 = NameAndType #5:#172 // "<init>":(Lnl/sander/beejava/constantpool/entry/Utf8Entry;Lnl/sander/beejava/constantpool/entry/Utf8Entry;)V
|
|
#172 = Utf8 (Lnl/sander/beejava/constantpool/entry/Utf8Entry;Lnl/sander/beejava/constantpool/entry/Utf8Entry;)V
|
|
#173 = Methodref #162.#174 // nl/sander/beejava/CodeContainer.getAccessFlags:()Ljava/util/Set;
|
|
#174 = NameAndType #175:#68 // getAccessFlags:()Ljava/util/Set;
|
|
#175 = Utf8 getAccessFlags
|
|
#176 = Methodref #159.#177 // nl/sander/beejava/classinfo/MethodInfo.addAccessFlags:(Ljava/util/Set;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#177 = NameAndType #178:#179 // addAccessFlags:(Ljava/util/Set;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#178 = Utf8 addAccessFlags
|
|
#179 = Utf8 (Ljava/util/Set;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#180 = Methodref #181.#182 // nl/sander/beejava/MethodCodeCreator.createCodeAttribute:(Lnl/sander/beejava/constantpool/entry/Utf8Entry;Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/attributes/CodeAttribute;
|
|
#181 = Class #183 // nl/sander/beejava/MethodCodeCreator
|
|
#182 = NameAndType #184:#185 // createCodeAttribute:(Lnl/sander/beejava/constantpool/entry/Utf8Entry;Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/attributes/CodeAttribute;
|
|
#183 = Utf8 nl/sander/beejava/MethodCodeCreator
|
|
#184 = Utf8 createCodeAttribute
|
|
#185 = Utf8 (Lnl/sander/beejava/constantpool/entry/Utf8Entry;Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/attributes/CodeAttribute;
|
|
#186 = Methodref #159.#187 // nl/sander/beejava/classinfo/MethodInfo.addAttribute:(Lnl/sander/beejava/classinfo/attributes/Attribute;)Lnl/sander/beejava/classinfo/Info;
|
|
#187 = NameAndType #188:#189 // addAttribute:(Lnl/sander/beejava/classinfo/attributes/Attribute;)Lnl/sander/beejava/classinfo/Info;
|
|
#188 = Utf8 addAttribute
|
|
#189 = Utf8 (Lnl/sander/beejava/classinfo/attributes/Attribute;)Lnl/sander/beejava/classinfo/Info;
|
|
#190 = Methodref #162.#191 // nl/sander/beejava/CodeContainer.getCode:()Ljava/util/List;
|
|
#191 = NameAndType #192:#193 // getCode:()Ljava/util/List;
|
|
#192 = Utf8 getCode
|
|
#193 = Utf8 ()Ljava/util/List;
|
|
#194 = InvokeDynamic #4:#70 // #4:accept:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Consumer;
|
|
#195 = InterfaceMethodref #196.#75 // java/util/List.forEach:(Ljava/util/function/Consumer;)V
|
|
#196 = Class #197 // java/util/List
|
|
#197 = Utf8 java/util/List
|
|
#198 = Methodref #199.#200 // nl/sander/beejava/api/CodeLine.hasMethodCall:()Z
|
|
#199 = Class #201 // nl/sander/beejava/api/CodeLine
|
|
#200 = NameAndType #202:#144 // hasMethodCall:()Z
|
|
#201 = Utf8 nl/sander/beejava/api/CodeLine
|
|
#202 = Utf8 hasMethodCall
|
|
#203 = Methodref #20.#204 // nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateMethodRefEntry:(Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/MethodRefEntry;
|
|
#204 = NameAndType #205:#206 // getOrCreateMethodRefEntry:(Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/MethodRefEntry;
|
|
#205 = Utf8 getOrCreateMethodRefEntry
|
|
#206 = Utf8 (Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/MethodRefEntry;
|
|
#207 = Methodref #199.#208 // nl/sander/beejava/api/CodeLine.setAssignedEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
#208 = NameAndType #209:#104 // setAssignedEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
#209 = Utf8 setAssignedEntry
|
|
#210 = Methodref #199.#211 // nl/sander/beejava/api/CodeLine.hasRefToOwnField:()Z
|
|
#211 = NameAndType #212:#144 // hasRefToOwnField:()Z
|
|
#212 = Utf8 hasRefToOwnField
|
|
#213 = Methodref #199.#214 // nl/sander/beejava/api/CodeLine.hasRefToExternalField:()Z
|
|
#214 = NameAndType #215:#144 // hasRefToExternalField:()Z
|
|
#215 = Utf8 hasRefToExternalField
|
|
#216 = Methodref #20.#217 // nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateFieldRefEntry:(Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/FieldRefEntry;
|
|
#217 = NameAndType #218:#219 // getOrCreateFieldRefEntry:(Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/FieldRefEntry;
|
|
#218 = Utf8 getOrCreateFieldRefEntry
|
|
#219 = Utf8 (Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/FieldRefEntry;
|
|
#220 = Methodref #199.#221 // nl/sander/beejava/api/CodeLine.hasConstValue:()Z
|
|
#221 = NameAndType #222:#144 // hasConstValue:()Z
|
|
#222 = Utf8 hasConstValue
|
|
#223 = Methodref #20.#224 // nl/sander/beejava/ConstantPoolEntryCreator.getOrCreatePrimitiveEntry:(Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;
|
|
#224 = NameAndType #225:#226 // getOrCreatePrimitiveEntry:(Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;
|
|
#225 = Utf8 getOrCreatePrimitiveEntry
|
|
#226 = Utf8 (Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;
|
|
#227 = Utf8 LineNumberTable
|
|
#228 = Utf8 LocalVariableTable
|
|
#229 = Utf8 this
|
|
#230 = Utf8 Lnl/sander/beejava/Compiler;
|
|
#231 = Utf8 (Lnl/sander/beejava/api/BeeSource;)Lnl/sander/beejava/CompiledClass;
|
|
#232 = Utf8 beeSource
|
|
#233 = Utf8 Lnl/sander/beejava/api/BeeSource;
|
|
#234 = Utf8 method
|
|
#235 = Utf8 Lnl/sander/beejava/api/BeeMethod;
|
|
#236 = Utf8 StackMapTable
|
|
#237 = Utf8 Lnl/sander/beejava/CodeContainer;
|
|
#238 = Utf8 updateConstantPool
|
|
#239 = Utf8 (Lnl/sander/beejava/CodeContainer;)V
|
|
#240 = Utf8 codeContainer
|
|
#241 = Utf8 (Lnl/sander/beejava/api/CodeLine;)V
|
|
#242 = Utf8 methodRefEntry
|
|
#243 = Utf8 Lnl/sander/beejava/constantpool/entry/MethodRefEntry;
|
|
#244 = Utf8 fieldRefEntry
|
|
#245 = Utf8 Lnl/sander/beejava/constantpool/entry/FieldRefEntry;
|
|
#246 = Utf8 primitiveEntry
|
|
#247 = Utf8 Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;
|
|
#248 = Utf8 codeline
|
|
#249 = Utf8 Lnl/sander/beejava/api/CodeLine;
|
|
#250 = Utf8 SourceFile
|
|
#251 = Utf8 Compiler.java
|
|
#252 = Utf8 BootstrapMethods
|
|
#253 = MethodHandle 6:#254 // REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
#254 = Methodref #255.#256 // java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
#255 = Class #257 // java/lang/invoke/LambdaMetafactory
|
|
#256 = NameAndType #258:#259 // metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
#257 = Utf8 java/lang/invoke/LambdaMetafactory
|
|
#258 = Utf8 metafactory
|
|
#259 = Utf8 (Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
#260 = MethodType #261 // (Ljava/lang/Object;)V
|
|
#261 = Utf8 (Ljava/lang/Object;)V
|
|
#262 = MethodHandle 5:#263 // REF_invokeVirtual nl/sander/beejava/Compiler.updateConstantPool:(Lnl/sander/beejava/CodeContainer;)V
|
|
#263 = Methodref #11.#264 // nl/sander/beejava/Compiler.updateConstantPool:(Lnl/sander/beejava/CodeContainer;)V
|
|
#264 = NameAndType #238:#239 // updateConstantPool:(Lnl/sander/beejava/CodeContainer;)V
|
|
#265 = MethodType #266 // (Lnl/sander/beejava/api/BeeConstructor;)V
|
|
#266 = Utf8 (Lnl/sander/beejava/api/BeeConstructor;)V
|
|
#267 = MethodType #268 // (Lnl/sander/beejava/api/BeeMethod;)V
|
|
#268 = Utf8 (Lnl/sander/beejava/api/BeeMethod;)V
|
|
#269 = MethodType #130 // (Ljava/lang/Object;)Ljava/lang/Object;
|
|
#270 = MethodHandle 5:#151 // REF_invokeVirtual nl/sander/beejava/Compiler.createMethod:(Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#271 = MethodType #272 // (Lnl/sander/beejava/api/BeeConstructor;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#272 = Utf8 (Lnl/sander/beejava/api/BeeConstructor;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#273 = MethodHandle 5:#155 // REF_invokeVirtual nl/sander/beejava/CompiledClass.addMethod:(Lnl/sander/beejava/classinfo/MethodInfo;)V
|
|
#274 = MethodType #158 // (Lnl/sander/beejava/classinfo/MethodInfo;)V
|
|
#275 = MethodHandle 5:#276 // REF_invokeVirtual nl/sander/beejava/Compiler.updateConstantPool:(Lnl/sander/beejava/api/CodeLine;)V
|
|
#276 = Methodref #11.#277 // nl/sander/beejava/Compiler.updateConstantPool:(Lnl/sander/beejava/api/CodeLine;)V
|
|
#277 = NameAndType #238:#241 // updateConstantPool:(Lnl/sander/beejava/api/CodeLine;)V
|
|
#278 = MethodType #241 // (Lnl/sander/beejava/api/CodeLine;)V
|
|
#279 = Utf8 InnerClasses
|
|
#280 = Class #281 // java/lang/invoke/MethodHandles$Lookup
|
|
#281 = Utf8 java/lang/invoke/MethodHandles$Lookup
|
|
#282 = Class #283 // java/lang/invoke/MethodHandles
|
|
#283 = Utf8 java/lang/invoke/MethodHandles
|
|
#284 = Utf8 Lookup
|
|
{
|
|
private final nl.sander.beejava.CompiledClass compiledClass;
|
|
descriptor: Lnl/sander/beejava/CompiledClass;
|
|
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
|
|
|
|
private final nl.sander.beejava.ConstantPoolEntryCreator constantPoolEntryCreator;
|
|
descriptor: Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
|
|
|
|
private final nl.sander.beejava.ConstantPoolCreator constantPoolCreator;
|
|
descriptor: Lnl/sander/beejava/ConstantPoolCreator;
|
|
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
|
|
|
|
private nl.sander.beejava.constantpool.entry.Utf8Entry codeAttributeNameEntry;
|
|
descriptor: Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
flags: (0x0002) ACC_PRIVATE
|
|
|
|
public nl.sander.beejava.Compiler(nl.sander.beejava.CompiledClass);
|
|
descriptor: (Lnl/sander/beejava/CompiledClass;)V
|
|
flags: (0x0001) ACC_PUBLIC
|
|
Code:
|
|
stack=4, locals=2, args_size=2
|
|
0: aload_0
|
|
1: invokespecial #1 // Method java/lang/Object."<init>":()V
|
|
4: aload_0
|
|
5: new #7 // class nl/sander/beejava/ConstantPoolCreator
|
|
8: dup
|
|
9: invokespecial #9 // Method nl/sander/beejava/ConstantPoolCreator."<init>":()V
|
|
12: putfield #10 // Field constantPoolCreator:Lnl/sander/beejava/ConstantPoolCreator;
|
|
15: aload_0
|
|
16: aload_1
|
|
17: putfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
20: aload_0
|
|
21: new #20 // class nl/sander/beejava/ConstantPoolEntryCreator
|
|
24: dup
|
|
25: aload_1
|
|
26: invokespecial #22 // Method nl/sander/beejava/ConstantPoolEntryCreator."<init>":(Lnl/sander/beejava/CompiledClass;)V
|
|
29: putfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
32: return
|
|
LineNumberTable:
|
|
line 34: 0
|
|
line 25: 4
|
|
line 35: 15
|
|
line 36: 20
|
|
line 37: 32
|
|
LocalVariableTable:
|
|
Start Length Slot Name Signature
|
|
0 33 0 this Lnl/sander/beejava/Compiler;
|
|
0 33 1 compiledClass Lnl/sander/beejava/CompiledClass;
|
|
|
|
public static nl.sander.beejava.CompiledClass compile(nl.sander.beejava.api.BeeSource);
|
|
descriptor: (Lnl/sander/beejava/api/BeeSource;)Lnl/sander/beejava/CompiledClass;
|
|
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
|
|
Code:
|
|
stack=5, locals=1, args_size=1
|
|
0: new #11 // class nl/sander/beejava/Compiler
|
|
3: dup
|
|
4: new #29 // class nl/sander/beejava/CompiledClass
|
|
7: dup
|
|
8: aload_0
|
|
9: invokespecial #31 // Method nl/sander/beejava/CompiledClass."<init>":(Lnl/sander/beejava/api/BeeSource;)V
|
|
12: invokespecial #34 // Method "<init>":(Lnl/sander/beejava/CompiledClass;)V
|
|
15: invokevirtual #35 // Method compile:()Lnl/sander/beejava/CompiledClass;
|
|
18: areturn
|
|
LineNumberTable:
|
|
line 46: 0
|
|
LocalVariableTable:
|
|
Start Length Slot Name Signature
|
|
0 19 0 beeSource Lnl/sander/beejava/api/BeeSource;
|
|
|
|
public nl.sander.beejava.CompiledClass compile();
|
|
descriptor: ()Lnl/sander/beejava/CompiledClass;
|
|
flags: (0x0001) ACC_PUBLIC
|
|
Code:
|
|
stack=2, locals=1, args_size=1
|
|
0: aload_0
|
|
1: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
4: aload_0
|
|
5: invokevirtual #39 // Method createConstantPool:()Lnl/sander/beejava/constantpool/ConstantPool;
|
|
8: invokevirtual #43 // Method nl/sander/beejava/CompiledClass.setConstantPool:(Lnl/sander/beejava/constantpool/ConstantPool;)V
|
|
11: aload_0
|
|
12: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
15: invokevirtual #47 // Method nl/sander/beejava/ConstantPoolEntryCreator.addInterfaces:()V
|
|
18: aload_0
|
|
19: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
22: invokevirtual #50 // Method nl/sander/beejava/ConstantPoolEntryCreator.addFields:()V
|
|
25: aload_0
|
|
26: invokevirtual #53 // Method addConstructors:()V
|
|
29: aload_0
|
|
30: invokevirtual #56 // Method addMethods:()V
|
|
33: aload_0
|
|
34: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
37: areturn
|
|
LineNumberTable:
|
|
line 53: 0
|
|
line 55: 11
|
|
line 56: 18
|
|
line 57: 25
|
|
line 58: 29
|
|
line 60: 33
|
|
LocalVariableTable:
|
|
Start Length Slot Name Signature
|
|
0 38 0 this Lnl/sander/beejava/Compiler;
|
|
|
|
private nl.sander.beejava.constantpool.ConstantPool createConstantPool();
|
|
descriptor: ()Lnl/sander/beejava/constantpool/ConstantPool;
|
|
flags: (0x0002) ACC_PRIVATE
|
|
Code:
|
|
stack=3, locals=1, args_size=1
|
|
0: aload_0
|
|
1: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
4: invokevirtual #59 // Method nl/sander/beejava/CompiledClass.getSource:()Lnl/sander/beejava/api/BeeSource;
|
|
7: invokevirtual #63 // Method nl/sander/beejava/api/BeeSource.getConstructors:()Ljava/util/Set;
|
|
10: aload_0
|
|
11: invokedynamic #69, 0 // InvokeDynamic #0:accept:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Consumer;
|
|
16: invokeinterface #73, 2 // InterfaceMethod java/util/Set.forEach:(Ljava/util/function/Consumer;)V
|
|
21: aload_0
|
|
22: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
25: invokevirtual #59 // Method nl/sander/beejava/CompiledClass.getSource:()Lnl/sander/beejava/api/BeeSource;
|
|
28: invokevirtual #79 // Method nl/sander/beejava/api/BeeSource.getMethods:()Ljava/util/Set;
|
|
31: aload_0
|
|
32: invokedynamic #82, 0 // InvokeDynamic #1:accept:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Consumer;
|
|
37: invokeinterface #73, 2 // InterfaceMethod java/util/Set.forEach:(Ljava/util/function/Consumer;)V
|
|
42: aload_0
|
|
43: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
46: aload_0
|
|
47: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
50: invokevirtual #83 // Method nl/sander/beejava/ConstantPoolEntryCreator.addThisClass:()Lnl/sander/beejava/constantpool/entry/ClassEntry;
|
|
53: invokevirtual #87 // Method nl/sander/beejava/CompiledClass.setThisClass:(Lnl/sander/beejava/constantpool/entry/ClassEntry;)V
|
|
56: aload_0
|
|
57: aload_0
|
|
58: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
61: ldc #91 // String Code
|
|
63: invokevirtual #93 // Method nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateUtf8:(Ljava/lang/String;)Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
66: putfield #97 // Field codeAttributeNameEntry:Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
69: aload_0
|
|
70: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
73: aload_0
|
|
74: getfield #97 // Field codeAttributeNameEntry:Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
77: invokevirtual #101 // Method nl/sander/beejava/CompiledClass.addConstantPoolEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
80: aload_0
|
|
81: getfield #10 // Field constantPoolCreator:Lnl/sander/beejava/ConstantPoolCreator;
|
|
84: aload_0
|
|
85: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
88: invokevirtual #105 // Method nl/sander/beejava/CompiledClass.getConstantTree:()Ljava/util/Set;
|
|
91: invokevirtual #108 // Method nl/sander/beejava/ConstantPoolCreator.createConstantPool:(Ljava/util/Set;)Lnl/sander/beejava/constantpool/ConstantPool;
|
|
94: areturn
|
|
LineNumberTable:
|
|
line 64: 0
|
|
line 65: 21
|
|
line 67: 42
|
|
line 69: 56
|
|
line 70: 69
|
|
line 72: 80
|
|
LocalVariableTable:
|
|
Start Length Slot Name Signature
|
|
0 95 0 this Lnl/sander/beejava/Compiler;
|
|
|
|
public void addConstructors();
|
|
descriptor: ()V
|
|
flags: (0x0001) ACC_PUBLIC
|
|
Code:
|
|
stack=3, locals=1, args_size=1
|
|
0: aload_0
|
|
1: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
4: invokevirtual #59 // Method nl/sander/beejava/CompiledClass.getSource:()Lnl/sander/beejava/api/BeeSource;
|
|
7: invokevirtual #63 // Method nl/sander/beejava/api/BeeSource.getConstructors:()Ljava/util/Set;
|
|
10: invokeinterface #111, 1 // InterfaceMethod java/util/Set.stream:()Ljava/util/stream/Stream;
|
|
15: aload_0
|
|
16: invokedynamic #115, 0 // InvokeDynamic #2:apply:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Function;
|
|
21: invokeinterface #119, 2 // InterfaceMethod java/util/stream/Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
|
|
26: aload_0
|
|
27: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
30: dup
|
|
31: invokestatic #125 // Method java/util/Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
|
|
34: pop
|
|
35: invokedynamic #131, 0 // InvokeDynamic #3:accept:(Lnl/sander/beejava/CompiledClass;)Ljava/util/function/Consumer;
|
|
40: invokeinterface #134, 2 // InterfaceMethod java/util/stream/Stream.forEach:(Ljava/util/function/Consumer;)V
|
|
45: return
|
|
LineNumberTable:
|
|
line 76: 0
|
|
line 77: 21
|
|
line 78: 31
|
|
line 79: 45
|
|
LocalVariableTable:
|
|
Start Length Slot Name Signature
|
|
0 46 0 this Lnl/sander/beejava/Compiler;
|
|
|
|
public void addMethods();
|
|
descriptor: ()V
|
|
flags: (0x0001) ACC_PUBLIC
|
|
Code:
|
|
stack=3, locals=3, args_size=1
|
|
0: aload_0
|
|
1: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
4: aload_0
|
|
5: getfield #97 // Field codeAttributeNameEntry:Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
8: invokevirtual #101 // Method nl/sander/beejava/CompiledClass.addConstantPoolEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
11: aload_0
|
|
12: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
15: invokevirtual #59 // Method nl/sander/beejava/CompiledClass.getSource:()Lnl/sander/beejava/api/BeeSource;
|
|
18: invokevirtual #79 // Method nl/sander/beejava/api/BeeSource.getMethods:()Ljava/util/Set;
|
|
21: invokeinterface #135, 1 // InterfaceMethod java/util/Set.iterator:()Ljava/util/Iterator;
|
|
26: astore_1
|
|
27: aload_1
|
|
28: invokeinterface #139, 1 // InterfaceMethod java/util/Iterator.hasNext:()Z
|
|
33: ifeq 61
|
|
36: aload_1
|
|
37: invokeinterface #145, 1 // InterfaceMethod java/util/Iterator.next:()Ljava/lang/Object;
|
|
42: checkcast #149 // class nl/sander/beejava/api/BeeMethod
|
|
45: astore_2
|
|
46: aload_0
|
|
47: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
50: aload_0
|
|
51: aload_2
|
|
52: invokevirtual #151 // Method createMethod:(Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
55: invokevirtual #155 // Method nl/sander/beejava/CompiledClass.addMethod:(Lnl/sander/beejava/classinfo/MethodInfo;)V
|
|
58: goto 27
|
|
61: return
|
|
LineNumberTable:
|
|
line 86: 0
|
|
line 87: 11
|
|
line 88: 46
|
|
line 89: 58
|
|
line 94: 61
|
|
LocalVariableTable:
|
|
Start Length Slot Name Signature
|
|
46 12 2 method Lnl/sander/beejava/api/BeeMethod;
|
|
0 62 0 this Lnl/sander/beejava/Compiler;
|
|
StackMapTable: number_of_entries = 2
|
|
frame_type = 252 /* append */
|
|
offset_delta = 27
|
|
locals = [ class java/util/Iterator ]
|
|
frame_type = 250 /* chop */
|
|
offset_delta = 33
|
|
|
|
private nl.sander.beejava.classinfo.MethodInfo createMethod(nl.sander.beejava.api.CodeContainer);
|
|
descriptor: (Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
flags: (0x0002) ACC_PRIVATE
|
|
Code:
|
|
stack=5, locals=2, args_size=2
|
|
0: new #159 // class nl/sander/beejava/classinfo/MethodInfo
|
|
3: dup
|
|
4: aload_0
|
|
5: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
8: aload_1
|
|
9: invokevirtual #161 // Method nl/sander/beejava/CodeContainer.getName:()Ljava/lang/String;
|
|
12: invokevirtual #93 // Method nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateUtf8:(Ljava/lang/String;)Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
15: aload_0
|
|
16: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
19: aload_1
|
|
20: invokevirtual #167 // Method nl/sander/beejava/CodeContainer.getSignature:()Ljava/lang/String;
|
|
23: invokevirtual #93 // Method nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateUtf8:(Ljava/lang/String;)Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
26: invokespecial #170 // Method nl/sander/beejava/classinfo/MethodInfo."<init>":(Lnl/sander/beejava/constantpool/entry/Utf8Entry;Lnl/sander/beejava/constantpool/entry/Utf8Entry;)V
|
|
29: aload_1
|
|
30: invokevirtual #173 // Method nl/sander/beejava/CodeContainer.getAccessFlags:()Ljava/util/Set;
|
|
33: invokevirtual #176 // Method nl/sander/beejava/classinfo/MethodInfo.addAccessFlags:(Ljava/util/Set;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
36: aload_0
|
|
37: getfield #97 // Field codeAttributeNameEntry:Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
40: aload_1
|
|
41: invokestatic #180 // Method nl/sander/beejava/MethodCodeCreator.createCodeAttribute:(Lnl/sander/beejava/constantpool/entry/Utf8Entry;Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/attributes/CodeAttribute;
|
|
44: invokevirtual #186 // Method nl/sander/beejava/classinfo/MethodInfo.addAttribute:(Lnl/sander/beejava/classinfo/attributes/Attribute;)Lnl/sander/beejava/classinfo/Info;
|
|
47: checkcast #159 // class nl/sander/beejava/classinfo/MethodInfo
|
|
50: areturn
|
|
LineNumberTable:
|
|
line 101: 0
|
|
line 102: 9
|
|
line 103: 20
|
|
line 104: 30
|
|
line 105: 41
|
|
line 101: 50
|
|
LocalVariableTable:
|
|
Start Length Slot Name Signature
|
|
0 51 0 this Lnl/sander/beejava/Compiler;
|
|
0 51 1 method Lnl/sander/beejava/CodeContainer;
|
|
|
|
private void updateConstantPool(nl.sander.beejava.api.CodeContainer);
|
|
descriptor: (Lnl/sander/beejava/CodeContainer;)V
|
|
flags: (0x0002) ACC_PRIVATE
|
|
Code:
|
|
stack=3, locals=2, args_size=2
|
|
0: aload_0
|
|
1: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
4: aload_0
|
|
5: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
8: aload_1
|
|
9: invokevirtual #161 // Method nl/sander/beejava/CodeContainer.getName:()Ljava/lang/String;
|
|
12: invokevirtual #93 // Method nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateUtf8:(Ljava/lang/String;)Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
15: invokevirtual #101 // Method nl/sander/beejava/CompiledClass.addConstantPoolEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
18: aload_0
|
|
19: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
22: aload_0
|
|
23: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
26: aload_1
|
|
27: invokevirtual #167 // Method nl/sander/beejava/CodeContainer.getSignature:()Ljava/lang/String;
|
|
30: invokevirtual #93 // Method nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateUtf8:(Ljava/lang/String;)Lnl/sander/beejava/constantpool/entry/Utf8Entry;
|
|
33: invokevirtual #101 // Method nl/sander/beejava/CompiledClass.addConstantPoolEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
36: aload_1
|
|
37: invokevirtual #190 // Method nl/sander/beejava/CodeContainer.getCode:()Ljava/util/List;
|
|
40: aload_0
|
|
41: invokedynamic #194, 0 // InvokeDynamic #4:accept:(Lnl/sander/beejava/Compiler;)Ljava/util/function/Consumer;
|
|
46: invokeinterface #195, 2 // InterfaceMethod java/util/List.forEach:(Ljava/util/function/Consumer;)V
|
|
51: return
|
|
LineNumberTable:
|
|
line 112: 0
|
|
line 113: 18
|
|
line 114: 36
|
|
line 115: 51
|
|
LocalVariableTable:
|
|
Start Length Slot Name Signature
|
|
0 52 0 this Lnl/sander/beejava/Compiler;
|
|
0 52 1 codeContainer Lnl/sander/beejava/CodeContainer;
|
|
|
|
private void updateConstantPool(nl.sander.beejava.api.CodeLine);
|
|
descriptor: (Lnl/sander/beejava/api/CodeLine;)V
|
|
flags: (0x0002) ACC_PRIVATE
|
|
Code:
|
|
stack=2, locals=3, args_size=2
|
|
0: aload_1
|
|
1: invokevirtual #198 // Method nl/sander/beejava/api/CodeLine.hasMethodCall:()Z
|
|
4: ifeq 29
|
|
7: aload_0
|
|
8: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
11: aload_1
|
|
12: invokevirtual #203 // Method nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateMethodRefEntry:(Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/MethodRefEntry;
|
|
15: astore_2
|
|
16: aload_1
|
|
17: aload_2
|
|
18: invokevirtual #207 // Method nl/sander/beejava/api/CodeLine.setAssignedEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
21: aload_0
|
|
22: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
25: aload_2
|
|
26: invokevirtual #101 // Method nl/sander/beejava/CompiledClass.addConstantPoolEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
29: aload_1
|
|
30: invokevirtual #210 // Method nl/sander/beejava/api/CodeLine.hasRefToOwnField:()Z
|
|
33: ifne 43
|
|
36: aload_1
|
|
37: invokevirtual #213 // Method nl/sander/beejava/api/CodeLine.hasRefToExternalField:()Z
|
|
40: ifeq 65
|
|
43: aload_0
|
|
44: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
47: aload_1
|
|
48: invokevirtual #216 // Method nl/sander/beejava/ConstantPoolEntryCreator.getOrCreateFieldRefEntry:(Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/FieldRefEntry;
|
|
51: astore_2
|
|
52: aload_1
|
|
53: aload_2
|
|
54: invokevirtual #207 // Method nl/sander/beejava/api/CodeLine.setAssignedEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
57: aload_0
|
|
58: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
61: aload_2
|
|
62: invokevirtual #101 // Method nl/sander/beejava/CompiledClass.addConstantPoolEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
65: aload_1
|
|
66: invokevirtual #220 // Method nl/sander/beejava/api/CodeLine.hasConstValue:()Z
|
|
69: ifeq 94
|
|
72: aload_0
|
|
73: getfield #25 // Field constantPoolEntryCreator:Lnl/sander/beejava/ConstantPoolEntryCreator;
|
|
76: aload_1
|
|
77: invokevirtual #223 // Method nl/sander/beejava/ConstantPoolEntryCreator.getOrCreatePrimitiveEntry:(Lnl/sander/beejava/api/CodeLine;)Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;
|
|
80: astore_2
|
|
81: aload_1
|
|
82: aload_2
|
|
83: invokevirtual #207 // Method nl/sander/beejava/api/CodeLine.setAssignedEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
86: aload_0
|
|
87: getfield #16 // Field compiledClass:Lnl/sander/beejava/CompiledClass;
|
|
90: aload_2
|
|
91: invokevirtual #101 // Method nl/sander/beejava/CompiledClass.addConstantPoolEntry:(Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;)V
|
|
94: return
|
|
LineNumberTable:
|
|
line 127: 0
|
|
line 128: 7
|
|
line 129: 16
|
|
line 130: 21
|
|
line 133: 29
|
|
line 134: 43
|
|
line 135: 52
|
|
line 136: 57
|
|
line 139: 65
|
|
line 140: 72
|
|
line 141: 81
|
|
line 142: 86
|
|
line 144: 94
|
|
LocalVariableTable:
|
|
Start Length Slot Name Signature
|
|
16 13 2 methodRefEntry Lnl/sander/beejava/constantpool/entry/MethodRefEntry;
|
|
52 13 2 fieldRefEntry Lnl/sander/beejava/constantpool/entry/FieldRefEntry;
|
|
81 13 2 primitiveEntry Lnl/sander/beejava/constantpool/entry/ConstantPoolEntry;
|
|
0 95 0 this Lnl/sander/beejava/Compiler;
|
|
0 95 1 codeline Lnl/sander/beejava/api/CodeLine;
|
|
StackMapTable: number_of_entries = 4
|
|
frame_type = 29 /* same */
|
|
frame_type = 13 /* same */
|
|
frame_type = 21 /* same */
|
|
frame_type = 28 /* same */
|
|
}
|
|
SourceFile: "Compiler.java"
|
|
BootstrapMethods:
|
|
0: #253 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
Method arguments:
|
|
#260 (Ljava/lang/Object;)V
|
|
#262 REF_invokeVirtual nl/sander/beejava/Compiler.updateConstantPool:(Lnl/sander/beejava/CodeContainer;)V
|
|
#265 (Lnl/sander/beejava/api/BeeConstructor;)V
|
|
1: #253 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
Method arguments:
|
|
#260 (Ljava/lang/Object;)V
|
|
#262 REF_invokeVirtual nl/sander/beejava/Compiler.updateConstantPool:(Lnl/sander/beejava/CodeContainer;)V
|
|
#267 (Lnl/sander/beejava/api/BeeMethod;)V
|
|
2: #253 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
Method arguments:
|
|
#269 (Ljava/lang/Object;)Ljava/lang/Object;
|
|
#270 REF_invokeVirtual nl/sander/beejava/Compiler.createMethod:(Lnl/sander/beejava/CodeContainer;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
#271 (Lnl/sander/beejava/api/BeeConstructor;)Lnl/sander/beejava/classinfo/MethodInfo;
|
|
3: #253 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
Method arguments:
|
|
#260 (Ljava/lang/Object;)V
|
|
#273 REF_invokeVirtual nl/sander/beejava/CompiledClass.addMethod:(Lnl/sander/beejava/classinfo/MethodInfo;)V
|
|
#274 (Lnl/sander/beejava/classinfo/MethodInfo;)V
|
|
4: #253 REF_invokeStatic java/lang/invoke/LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
|
|
Method arguments:
|
|
#260 (Ljava/lang/Object;)V
|
|
#275 REF_invokeVirtual nl/sander/beejava/Compiler.updateConstantPool:(Lnl/sander/beejava/api/CodeLine;)V
|
|
#278 (Lnl/sander/beejava/api/CodeLine;)V
|
|
InnerClasses:
|
|
public static final #284= #280 of #282; // Lookup=class java/lang/invoke/MethodHandles$Lookup of class java/lang/invoke/MethodHandles
|