File tree 2 files changed +17
-0
lines changed
jvm-assembler-server/src/main/java/com/mmhelloworld/jvmassembler/server
2 files changed +17
-0
lines changed Original file line number Diff line number Diff line change 70
70
@ JsonSubTypes .Type (value = Asm .LdcInteger .class , name = "LdcInteger" ),
71
71
@ JsonSubTypes .Type (value = Asm .LdcString .class , name = "LdcString" ),
72
72
@ JsonSubTypes .Type (value = Asm .LdcLong .class , name = "LdcLong" ),
73
+ @ JsonSubTypes .Type (value = Asm .LdcType .class , name = "LdcType" ),
73
74
@ JsonSubTypes .Type (value = Asm .Ldiv .class , name = "Ldiv" ),
74
75
@ JsonSubTypes .Type (value = Asm .Lload .class , name = "Lload" ),
75
76
@ JsonSubTypes .Type (value = Asm .Lmul .class , name = "Lmul" ),
@@ -160,6 +161,7 @@ public enum AsmType {
160
161
LdcInteger ,
161
162
LdcLong ,
162
163
LdcString ,
164
+ LdcType ,
163
165
Ldiv ,
164
166
Lload ,
165
167
Lmul ,
@@ -776,6 +778,18 @@ public long getVal() {
776
778
}
777
779
}
778
780
781
+ public static final class LdcType extends Asm {
782
+ private final String val ;
783
+
784
+ public LdcType (@ JsonProperty ("val" ) final String val ) {
785
+ this .val = val ;
786
+ }
787
+
788
+ public String getVal () {
789
+ return val ;
790
+ }
791
+ }
792
+
779
793
public static class LookupSwitch extends Asm {
780
794
private final String dlabel ;
781
795
private final String [] clabels ;
Original file line number Diff line number Diff line change @@ -390,6 +390,9 @@ public AssemblerResponse assemble(CreateBytecode request) throws JsonProcessingE
390
390
case LdcString :
391
391
mv .visitLdcInsn (((Asm .LdcString ) asm ).getVal ());
392
392
break ;
393
+ case LdcType :
394
+ mv .visitLdcInsn (Type .getType (((Asm .LdcType )asm ).getVal ()));
395
+ break ;
393
396
case Ldiv :
394
397
mv .visitInsn (LDIV );
395
398
break ;
You can’t perform that action at this time.
0 commit comments