aboutsummaryrefslogtreecommitdiff
path: root/lux-jvm/source/luxc/lang/directive/jvm.lux
diff options
context:
space:
mode:
Diffstat (limited to 'lux-jvm/source/luxc/lang/directive/jvm.lux')
-rw-r--r--lux-jvm/source/luxc/lang/directive/jvm.lux542
1 files changed, 271 insertions, 271 deletions
diff --git a/lux-jvm/source/luxc/lang/directive/jvm.lux b/lux-jvm/source/luxc/lang/directive/jvm.lux
index b81a10c69..36a498cda 100644
--- a/lux-jvm/source/luxc/lang/directive/jvm.lux
+++ b/lux-jvm/source/luxc/lang/directive/jvm.lux
@@ -72,181 +72,181 @@
(def: (literal literal)
(-> /.Literal Inst)
(case literal
- {#/.Boolean value} (_.boolean value)
- {#/.Int value} (_.int value)
- {#/.Long value} (_.long value)
- {#/.Double value} (_.double value)
- {#/.Char value} (_.char value)
- {#/.String value} (_.string value)))
+ {/.#Boolean value} (_.boolean value)
+ {/.#Int value} (_.int value)
+ {/.#Long value} (_.long value)
+ {/.#Double value} (_.double value)
+ {/.#Char value} (_.char value)
+ {/.#String value} (_.string value)))
(def: (constant instruction)
(-> /.Constant Inst)
(case instruction
- {#/.BIPUSH constant} (_.BIPUSH constant)
+ {/.#BIPUSH constant} (_.BIPUSH constant)
- {#/.SIPUSH constant} (_.SIPUSH constant)
-
- #/.ICONST_M1 _.ICONST_M1
- #/.ICONST_0 _.ICONST_0
- #/.ICONST_1 _.ICONST_1
- #/.ICONST_2 _.ICONST_2
- #/.ICONST_3 _.ICONST_3
- #/.ICONST_4 _.ICONST_4
- #/.ICONST_5 _.ICONST_5
-
- #/.LCONST_0 _.LCONST_0
- #/.LCONST_1 _.LCONST_1
+ {/.#SIPUSH constant} (_.SIPUSH constant)
+
+ {/.#ICONST_M1} _.ICONST_M1
+ {/.#ICONST_0} _.ICONST_0
+ {/.#ICONST_1} _.ICONST_1
+ {/.#ICONST_2} _.ICONST_2
+ {/.#ICONST_3} _.ICONST_3
+ {/.#ICONST_4} _.ICONST_4
+ {/.#ICONST_5} _.ICONST_5
+
+ {/.#LCONST_0} _.LCONST_0
+ {/.#LCONST_1} _.LCONST_1
- #/.FCONST_0 _.FCONST_0
- #/.FCONST_1 _.FCONST_1
- #/.FCONST_2 _.FCONST_2
+ {/.#FCONST_0} _.FCONST_0
+ {/.#FCONST_1} _.FCONST_1
+ {/.#FCONST_2} _.FCONST_2
- #/.DCONST_0 _.DCONST_0
- #/.DCONST_1 _.DCONST_1
+ {/.#DCONST_0} _.DCONST_0
+ {/.#DCONST_1} _.DCONST_1
- #/.ACONST_NULL _.NULL
+ {/.#ACONST_NULL} _.NULL
- {#/.LDC literal}
+ {/.#LDC literal}
(..literal literal)
))
(def: (int_arithmetic instruction)
(-> /.Int_Arithmetic Inst)
(case instruction
- #/.IADD _.IADD
- #/.ISUB _.ISUB
- #/.IMUL _.IMUL
- #/.IDIV _.IDIV
- #/.IREM _.IREM
- #/.INEG _.INEG))
+ {/.#IADD} _.IADD
+ {/.#ISUB} _.ISUB
+ {/.#IMUL} _.IMUL
+ {/.#IDIV} _.IDIV
+ {/.#IREM} _.IREM
+ {/.#INEG} _.INEG))
(def: (long_arithmetic instruction)
(-> /.Long_Arithmetic Inst)
(case instruction
- #/.LADD _.LADD
- #/.LSUB _.LSUB
- #/.LMUL _.LMUL
- #/.LDIV _.LDIV
- #/.LREM _.LREM
- #/.LNEG _.LNEG))
+ {/.#LADD} _.LADD
+ {/.#LSUB} _.LSUB
+ {/.#LMUL} _.LMUL
+ {/.#LDIV} _.LDIV
+ {/.#LREM} _.LREM
+ {/.#LNEG} _.LNEG))
(def: (float_arithmetic instruction)
(-> /.Float_Arithmetic Inst)
(case instruction
- #/.FADD _.FADD
- #/.FSUB _.FSUB
- #/.FMUL _.FMUL
- #/.FDIV _.FDIV
- #/.FREM _.FREM
- #/.FNEG _.FNEG))
+ {/.#FADD} _.FADD
+ {/.#FSUB} _.FSUB
+ {/.#FMUL} _.FMUL
+ {/.#FDIV} _.FDIV
+ {/.#FREM} _.FREM
+ {/.#FNEG} _.FNEG))
(def: (double_arithmetic instruction)
(-> /.Double_Arithmetic Inst)
(case instruction
- #/.DADD _.DADD
- #/.DSUB _.DSUB
- #/.DMUL _.DMUL
- #/.DDIV _.DDIV
- #/.DREM _.DREM
- #/.DNEG _.DNEG))
+ {/.#DADD} _.DADD
+ {/.#DSUB} _.DSUB
+ {/.#DMUL} _.DMUL
+ {/.#DDIV} _.DDIV
+ {/.#DREM} _.DREM
+ {/.#DNEG} _.DNEG))
(def: (arithmetic instruction)
(-> /.Arithmetic Inst)
(case instruction
- {#/.Int_Arithmetic int_arithmetic}
+ {/.#Int_Arithmetic int_arithmetic}
(..int_arithmetic int_arithmetic)
- {#/.Long_Arithmetic long_arithmetic}
+ {/.#Long_Arithmetic long_arithmetic}
(..long_arithmetic long_arithmetic)
- {#/.Float_Arithmetic float_arithmetic}
+ {/.#Float_Arithmetic float_arithmetic}
(..float_arithmetic float_arithmetic)
- {#/.Double_Arithmetic double_arithmetic}
+ {/.#Double_Arithmetic double_arithmetic}
(..double_arithmetic double_arithmetic)))
(def: (int_bitwise instruction)
(-> /.Int_Bitwise Inst)
(case instruction
- #/.IOR _.IOR
- #/.IXOR _.IXOR
- #/.IAND _.IAND
- #/.ISHL _.ISHL
- #/.ISHR _.ISHR
- #/.IUSHR _.IUSHR))
+ {/.#IOR} _.IOR
+ {/.#IXOR} _.IXOR
+ {/.#IAND} _.IAND
+ {/.#ISHL} _.ISHL
+ {/.#ISHR} _.ISHR
+ {/.#IUSHR} _.IUSHR))
(def: (long_bitwise instruction)
(-> /.Long_Bitwise Inst)
(case instruction
- #/.LOR _.LOR
- #/.LXOR _.LXOR
- #/.LAND _.LAND
- #/.LSHL _.LSHL
- #/.LSHR _.LSHR
- #/.LUSHR _.LUSHR))
+ {/.#LOR} _.LOR
+ {/.#LXOR} _.LXOR
+ {/.#LAND} _.LAND
+ {/.#LSHL} _.LSHL
+ {/.#LSHR} _.LSHR
+ {/.#LUSHR} _.LUSHR))
(def: (bitwise instruction)
(-> /.Bitwise Inst)
(case instruction
- {#/.Int_Bitwise int_bitwise}
+ {/.#Int_Bitwise int_bitwise}
(..int_bitwise int_bitwise)
- {#/.Long_Bitwise long_bitwise}
+ {/.#Long_Bitwise long_bitwise}
(..long_bitwise long_bitwise)))
(def: (conversion instruction)
(-> /.Conversion Inst)
(case instruction
- #/.I2B _.I2B
- #/.I2S _.I2S
- #/.I2L _.I2L
- #/.I2F _.I2F
- #/.I2D _.I2D
- #/.I2C _.I2C
-
- #/.L2I _.L2I
- #/.L2F _.L2F
- #/.L2D _.L2D
-
- #/.F2I _.F2I
- #/.F2L _.F2L
- #/.F2D _.F2D
+ {/.#I2B} _.I2B
+ {/.#I2S} _.I2S
+ {/.#I2L} _.I2L
+ {/.#I2F} _.I2F
+ {/.#I2D} _.I2D
+ {/.#I2C} _.I2C
+
+ {/.#L2I} _.L2I
+ {/.#L2F} _.L2F
+ {/.#L2D} _.L2D
+
+ {/.#F2I} _.F2I
+ {/.#F2L} _.F2L
+ {/.#F2D} _.F2D
- #/.D2I _.D2I
- #/.D2L _.D2L
- #/.D2F _.D2F))
+ {/.#D2I} _.D2I
+ {/.#D2L} _.D2L
+ {/.#D2F} _.D2F))
(def: (array instruction)
(-> /.Array Inst)
(case instruction
- #/.ARRAYLENGTH _.ARRAYLENGTH
+ {/.#ARRAYLENGTH} _.ARRAYLENGTH
- {#/.NEWARRAY type} (_.NEWARRAY type)
- {#/.ANEWARRAY type} (_.ANEWARRAY type)
+ {/.#NEWARRAY type} (_.NEWARRAY type)
+ {/.#ANEWARRAY type} (_.ANEWARRAY type)
- #/.BALOAD _.BALOAD
- #/.BASTORE _.BASTORE
+ {/.#BALOAD} _.BALOAD
+ {/.#BASTORE} _.BASTORE
- #/.SALOAD _.SALOAD
- #/.SASTORE _.SASTORE
+ {/.#SALOAD} _.SALOAD
+ {/.#SASTORE} _.SASTORE
- #/.IALOAD _.IALOAD
- #/.IASTORE _.IASTORE
+ {/.#IALOAD} _.IALOAD
+ {/.#IASTORE} _.IASTORE
- #/.LALOAD _.LALOAD
- #/.LASTORE _.LASTORE
+ {/.#LALOAD} _.LALOAD
+ {/.#LASTORE} _.LASTORE
- #/.FALOAD _.FALOAD
- #/.FASTORE _.FASTORE
+ {/.#FALOAD} _.FALOAD
+ {/.#FASTORE} _.FASTORE
- #/.DALOAD _.DALOAD
- #/.DASTORE _.DASTORE
+ {/.#DALOAD} _.DALOAD
+ {/.#DASTORE} _.DASTORE
- #/.CALOAD _.CALOAD
- #/.CASTORE _.CASTORE
+ {/.#CALOAD} _.CALOAD
+ {/.#CASTORE} _.CASTORE
- #/.AALOAD _.AALOAD
- #/.AASTORE _.AASTORE))
+ {/.#AALOAD} _.AALOAD
+ {/.#AASTORE} _.AASTORE))
(def: (object instruction)
(-> /.Object Inst)
@@ -254,162 +254,162 @@
(^template [<tag> <inst>]
[{<tag> class field_name field_type}
(<inst> class field_name field_type)])
- ([#/.GETSTATIC _.GETSTATIC]
- [#/.PUTSTATIC _.PUTSTATIC]
- [#/.GETFIELD _.GETFIELD]
- [#/.PUTFIELD _.PUTFIELD])
+ ([/.#GETSTATIC _.GETSTATIC]
+ [/.#PUTSTATIC _.PUTSTATIC]
+ [/.#GETFIELD _.GETFIELD]
+ [/.#PUTFIELD _.PUTFIELD])
- {#/.NEW type} (_.NEW type)
+ {/.#NEW type} (_.NEW type)
- {#/.INSTANCEOF type} (_.INSTANCEOF type)
- {#/.CHECKCAST type} (_.CHECKCAST type)
+ {/.#INSTANCEOF type} (_.INSTANCEOF type)
+ {/.#CHECKCAST type} (_.CHECKCAST type)
(^template [<tag> <inst>]
[{<tag> class method_name method_type}
(<inst> class method_name method_type)])
- ([#/.INVOKEINTERFACE _.INVOKEINTERFACE]
- [#/.INVOKESPECIAL _.INVOKESPECIAL]
- [#/.INVOKESTATIC _.INVOKESTATIC]
- [#/.INVOKEVIRTUAL _.INVOKEVIRTUAL])
+ ([/.#INVOKEINTERFACE _.INVOKEINTERFACE]
+ [/.#INVOKESPECIAL _.INVOKESPECIAL]
+ [/.#INVOKESTATIC _.INVOKESTATIC]
+ [/.#INVOKEVIRTUAL _.INVOKEVIRTUAL])
))
(def: (local_int instruction)
(-> /.Local_Int Inst)
(case instruction
- {#/.ILOAD register} (_.ILOAD register)
- {#/.ISTORE register} (_.ISTORE register)))
+ {/.#ILOAD register} (_.ILOAD register)
+ {/.#ISTORE register} (_.ISTORE register)))
(def: (local_long instruction)
(-> /.Local_Long Inst)
(case instruction
- {#/.LLOAD register} (_.LLOAD register)
- {#/.LSTORE register} (_.LSTORE register)))
+ {/.#LLOAD register} (_.LLOAD register)
+ {/.#LSTORE register} (_.LSTORE register)))
(def: (local_float instruction)
(-> /.Local_Float Inst)
(case instruction
- {#/.FLOAD register} (_.FLOAD register)
- {#/.FSTORE register} (_.FSTORE register)))
+ {/.#FLOAD register} (_.FLOAD register)
+ {/.#FSTORE register} (_.FSTORE register)))
(def: (local_double instruction)
(-> /.Local_Double Inst)
(case instruction
- {#/.DLOAD register} (_.DLOAD register)
- {#/.DSTORE register} (_.DSTORE register)))
+ {/.#DLOAD register} (_.DLOAD register)
+ {/.#DSTORE register} (_.DSTORE register)))
(def: (local_object instruction)
(-> /.Local_Object Inst)
(case instruction
- {#/.ALOAD register} (_.ALOAD register)
- {#/.ASTORE register} (_.ASTORE register)))
+ {/.#ALOAD register} (_.ALOAD register)
+ {/.#ASTORE register} (_.ASTORE register)))
(def: (local instruction)
(-> /.Local Inst)
(case instruction
- {#/.Local_Int instruction} (..local_int instruction)
- {#/.IINC register} (_.IINC register)
- {#/.Local_Long instruction} (..local_long instruction)
- {#/.Local_Float instruction} (..local_float instruction)
- {#/.Local_Double instruction} (..local_double instruction)
- {#/.Local_Object instruction} (..local_object instruction)))
+ {/.#Local_Int instruction} (..local_int instruction)
+ {/.#IINC register} (_.IINC register)
+ {/.#Local_Long instruction} (..local_long instruction)
+ {/.#Local_Float instruction} (..local_float instruction)
+ {/.#Local_Double instruction} (..local_double instruction)
+ {/.#Local_Object instruction} (..local_object instruction)))
(def: (stack instruction)
(-> /.Stack Inst)
(case instruction
- #/.DUP _.DUP
- #/.DUP_X1 _.DUP_X1
- #/.DUP_X2 _.DUP_X2
- #/.DUP2 _.DUP2
- #/.DUP2_X1 _.DUP2_X1
- #/.DUP2_X2 _.DUP2_X2
- #/.SWAP _.SWAP
- #/.POP _.POP
- #/.POP2 _.POP2))
+ {/.#DUP} _.DUP
+ {/.#DUP_X1} _.DUP_X1
+ {/.#DUP_X2} _.DUP_X2
+ {/.#DUP2} _.DUP2
+ {/.#DUP2_X1} _.DUP2_X1
+ {/.#DUP2_X2} _.DUP2_X2
+ {/.#SWAP} _.SWAP
+ {/.#POP} _.POP
+ {/.#POP2} _.POP2))
(def: (comparison instruction)
(-> /.Comparison Inst)
(case instruction
- #/.LCMP _.LCMP
+ {/.#LCMP} _.LCMP
- #/.FCMPG _.FCMPG
- #/.FCMPL _.FCMPL
+ {/.#FCMPG} _.FCMPG
+ {/.#FCMPL} _.FCMPL
- #/.DCMPG _.DCMPG
- #/.DCMPL _.DCMPL))
+ {/.#DCMPG} _.DCMPG
+ {/.#DCMPL} _.DCMPL))
(def: (branching instruction)
(-> (/.Branching org/objectweb/asm/Label) Inst)
(case instruction
- {#/.IF_ICMPEQ label} (_.IF_ICMPEQ label)
- {#/.IF_ICMPGE label} (_.IF_ICMPGE label)
- {#/.IF_ICMPGT label} (_.IF_ICMPGT label)
- {#/.IF_ICMPLE label} (_.IF_ICMPLE label)
- {#/.IF_ICMPLT label} (_.IF_ICMPLT label)
- {#/.IF_ICMPNE label} (_.IF_ICMPNE label)
- {#/.IFEQ label} (_.IFEQ label)
- {#/.IFGE label} (_.IFGE label)
- {#/.IFGT label} (_.IFGT label)
- {#/.IFLE label} (_.IFLE label)
- {#/.IFLT label} (_.IFLT label)
- {#/.IFNE label} (_.IFNE label)
-
- {#/.TABLESWITCH min max default labels}
+ {/.#IF_ICMPEQ label} (_.IF_ICMPEQ label)
+ {/.#IF_ICMPGE label} (_.IF_ICMPGE label)
+ {/.#IF_ICMPGT label} (_.IF_ICMPGT label)
+ {/.#IF_ICMPLE label} (_.IF_ICMPLE label)
+ {/.#IF_ICMPLT label} (_.IF_ICMPLT label)
+ {/.#IF_ICMPNE label} (_.IF_ICMPNE label)
+ {/.#IFEQ label} (_.IFEQ label)
+ {/.#IFGE label} (_.IFGE label)
+ {/.#IFGT label} (_.IFGT label)
+ {/.#IFLE label} (_.IFLE label)
+ {/.#IFLT label} (_.IFLT label)
+ {/.#IFNE label} (_.IFNE label)
+
+ {/.#TABLESWITCH min max default labels}
(_.TABLESWITCH min max default labels)
- {#/.LOOKUPSWITCH default keys+labels}
+ {/.#LOOKUPSWITCH default keys+labels}
(_.LOOKUPSWITCH default keys+labels)
- {#/.IF_ACMPEQ label} (_.IF_ACMPEQ label)
- {#/.IF_ACMPNE label} (_.IF_ACMPNE label)
- {#/.IFNONNULL label} (_.IFNONNULL label)
- {#/.IFNULL label} (_.IFNULL label)))
+ {/.#IF_ACMPEQ label} (_.IF_ACMPEQ label)
+ {/.#IF_ACMPNE label} (_.IF_ACMPNE label)
+ {/.#IFNONNULL label} (_.IFNONNULL label)
+ {/.#IFNULL label} (_.IFNULL label)))
(def: (exception instruction)
(-> (/.Exception org/objectweb/asm/Label) Inst)
(case instruction
- {#/.Try start end handler exception} (_.try start end handler exception)
- #/.ATHROW _.ATHROW))
+ {/.#Try start end handler exception} (_.try start end handler exception)
+ {/.#ATHROW} _.ATHROW))
(def: (concurrency instruction)
(-> /.Concurrency Inst)
(case instruction
- #/.MONITORENTER _.MONITORENTER
- #/.MONITOREXIT _.MONITOREXIT))
+ {/.#MONITORENTER} _.MONITORENTER
+ {/.#MONITOREXIT} _.MONITOREXIT))
(def: (return instruction)
(-> /.Return Inst)
(case instruction
- #/.RETURN _.RETURN
- #/.IRETURN _.IRETURN
- #/.LRETURN _.LRETURN
- #/.FRETURN _.FRETURN
- #/.DRETURN _.DRETURN
- #/.ARETURN _.ARETURN))
+ {/.#RETURN} _.RETURN
+ {/.#IRETURN} _.IRETURN
+ {/.#LRETURN} _.LRETURN
+ {/.#FRETURN} _.FRETURN
+ {/.#DRETURN} _.DRETURN
+ {/.#ARETURN} _.ARETURN))
(def: (control instruction)
(-> (/.Control org/objectweb/asm/Label) Inst)
(case instruction
- {#/.GOTO label} (_.GOTO label)
- {#/.Branching instruction} (..branching instruction)
- {#/.Exception instruction} (..exception instruction)
- {#/.Concurrency instruction} (..concurrency instruction)
- {#/.Return instruction} (..return instruction)))
+ {/.#GOTO label} (_.GOTO label)
+ {/.#Branching instruction} (..branching instruction)
+ {/.#Exception instruction} (..exception instruction)
+ {/.#Concurrency instruction} (..concurrency instruction)
+ {/.#Return instruction} (..return instruction)))
(def: (instruction instruction)
(-> (/.Instruction Inst org/objectweb/asm/Label) Inst)
(case instruction
- #/.NOP _.NOP
- {#/.Constant instruction} (..constant instruction)
- {#/.Arithmetic instruction} (..arithmetic instruction)
- {#/.Bitwise instruction} (..bitwise instruction)
- {#/.Conversion instruction} (..conversion instruction)
- {#/.Array instruction} (..array instruction)
- {#/.Object instruction} (..object instruction)
- {#/.Local instruction} (..local instruction)
- {#/.Stack instruction} (..stack instruction)
- {#/.Comparison instruction} (..comparison instruction)
- {#/.Control instruction} (..control instruction)
- {#/.Embedded embedded} embedded))
+ {/.#NOP} _.NOP
+ {/.#Constant instruction} (..constant instruction)
+ {/.#Arithmetic instruction} (..arithmetic instruction)
+ {/.#Bitwise instruction} (..bitwise instruction)
+ {/.#Conversion instruction} (..conversion instruction)
+ {/.#Array instruction} (..array instruction)
+ {/.#Object instruction} (..object instruction)
+ {/.#Local instruction} (..local instruction)
+ {/.#Stack instruction} (..stack instruction)
+ {/.#Comparison instruction} (..comparison instruction)
+ {/.#Control instruction} (..control instruction)
+ {/.#Embedded embedded} embedded))
(type: Mapping
(Dictionary /.Label org/objectweb/asm/Label))
@@ -421,10 +421,10 @@
(def: (relabel [mapping label])
(Re_labeler Identity)
(case (dictionary.value label mapping)
- {#.Some label}
+ {.#Some label}
[mapping label]
- #.None
+ {.#None}
(let [label' (org/objectweb/asm/Label::new)]
[(dictionary.has label label' mapping) label'])))
@@ -435,39 +435,39 @@
[{<tag> label}
(let [[mapping label] (..relabel [mapping label])]
[mapping {<tag> label}])])
- ([#/.IF_ICMPEQ] [#/.IF_ICMPGE] [#/.IF_ICMPGT] [#/.IF_ICMPLE] [#/.IF_ICMPLT] [#/.IF_ICMPNE]
- [#/.IFEQ] [#/.IFNE] [#/.IFGE] [#/.IFGT] [#/.IFLE] [#/.IFLT]
+ ([/.#IF_ICMPEQ] [/.#IF_ICMPGE] [/.#IF_ICMPGT] [/.#IF_ICMPLE] [/.#IF_ICMPLT] [/.#IF_ICMPNE]
+ [/.#IFEQ] [/.#IFNE] [/.#IFGE] [/.#IFGT] [/.#IFLE] [/.#IFLT]
- [#/.IF_ACMPEQ] [#/.IF_ACMPNE] [#/.IFNONNULL] [#/.IFNULL])
+ [/.#IF_ACMPEQ] [/.#IF_ACMPNE] [/.#IFNONNULL] [/.#IFNULL])
- {#/.TABLESWITCH min max default labels}
+ {/.#TABLESWITCH min max default labels}
(let [[mapping default] (..relabel [mapping default])
[mapping labels] (list\mix (function (_ input [mapping output])
(let [[mapping input] (..relabel [mapping input])]
[mapping (list& input output)]))
[mapping (list)] labels)]
- [mapping {#/.TABLESWITCH min max default (list.reversed labels)}])
+ [mapping {/.#TABLESWITCH min max default (list.reversed labels)}])
- {#/.LOOKUPSWITCH default keys+labels}
+ {/.#LOOKUPSWITCH default keys+labels}
(let [[mapping default] (..relabel [mapping default])
[mapping keys+labels] (list\mix (function (_ [expected input] [mapping output])
(let [[mapping input] (..relabel [mapping input])]
[mapping (list& [expected input] output)]))
[mapping (list)] keys+labels)]
- [mapping {#/.LOOKUPSWITCH default (list.reversed keys+labels)}])
+ [mapping {/.#LOOKUPSWITCH default (list.reversed keys+labels)}])
))
(def: (relabel_exception [mapping instruction])
(Re_labeler /.Exception)
(case instruction
- {#/.Try start end handler exception}
+ {/.#Try start end handler exception}
(let [[mapping start] (..relabel [mapping start])
[mapping end] (..relabel [mapping end])
[mapping handler] (..relabel [mapping handler])]
- [mapping {#/.Try start end handler exception}])
+ [mapping {/.#Try start end handler exception}])
- #/.ATHROW
- [mapping #/.ATHROW]
+ {/.#ATHROW}
+ [mapping {/.#ATHROW}]
))
(def: (relabel_control [mapping instruction])
@@ -477,41 +477,41 @@
[{<tag> instruction}
(let [[mapping instruction] (<relabel> [mapping instruction])]
[mapping {<tag> instruction}])])
- ([#/.GOTO ..relabel]
- [#/.Branching ..relabel_branching]
- [#/.Exception ..relabel_exception])
+ ([/.#GOTO ..relabel]
+ [/.#Branching ..relabel_branching]
+ [/.#Exception ..relabel_exception])
(^template [<tag>]
[{<tag> instruction}
[mapping {<tag> instruction}]])
- ([#/.Concurrency] [#/.Return])
+ ([/.#Concurrency] [/.#Return])
))
(def: (relabel_instruction [mapping instruction])
(Re_labeler (/.Instruction Inst))
(case instruction
- {#/.Embedded embedded}
- [mapping {#/.Embedded embedded}]
+ {/.#Embedded embedded}
+ [mapping {/.#Embedded embedded}]
- #/.NOP
- [mapping #/.NOP]
+ {/.#NOP}
+ [mapping {/.#NOP}]
(^template [<tag>]
[{<tag> instruction}
[mapping {<tag> instruction}]])
- ([#/.Constant]
- [#/.Arithmetic]
- [#/.Bitwise]
- [#/.Conversion]
- [#/.Array]
- [#/.Object]
- [#/.Local]
- [#/.Stack]
- [#/.Comparison])
+ ([/.#Constant]
+ [/.#Arithmetic]
+ [/.#Bitwise]
+ [/.#Conversion]
+ [/.#Array]
+ [/.#Object]
+ [/.#Local]
+ [/.#Stack]
+ [/.#Comparison])
- {#/.Control instruction}
+ {/.#Control instruction}
(let [[mapping instruction] (..relabel_control [mapping instruction])]
- [mapping {#/.Control instruction}])))
+ [mapping {/.#Control instruction}])))
(def: (relabel_bytecode [mapping bytecode])
(Re_labeler (/.Bytecode Inst))
@@ -587,10 +587,10 @@
..Handler))
(function (_ extension_name phase archive input)
(case (<code>.result parser input)
- {#try.Success input'}
+ {try.#Success input'}
(handler extension_name phase archive input')
- {#try.Failure error}
+ {try.#Failure error}
(phase.except extension.invalid_syntax [extension_name %.code input]))))
(type: Declaration
@@ -819,22 +819,22 @@
(def: (constraint tv)
(-> (Type Var) Constraint)
- [#/type.name (parser.name tv)
- #/type.super_class java/lang/Object
- #/type.super_interfaces (list)])
+ [/type.#name (parser.name tv)
+ /type.#super_class java/lang/Object
+ /type.#super_interfaces (list)])
(def: visibility
(-> ffi.Privacy jvm.Visibility)
- (|>> (case> #ffi.PublicP #jvm.Public
- #ffi.PrivateP #jvm.Private
- #ffi.ProtectedP #jvm.Protected
- #ffi.DefaultP #jvm.Default)))
+ (|>> (case> {ffi.#PublicP} {jvm.#Public}
+ {ffi.#PrivateP} {jvm.#Private}
+ {ffi.#ProtectedP} {jvm.#Protected}
+ {ffi.#DefaultP} {jvm.#Default})))
(def: field_config
(-> ffi.State jvm.Field_Config)
- (|>> (case> #ffi.VolatileS jvm.volatileF
- #ffi.FinalS jvm.finalF
- #ffi.DefaultS jvm.noneF)))
+ (|>> (case> {ffi.#VolatileS} jvm.volatileF
+ {ffi.#FinalS} jvm.finalF
+ {ffi.#DefaultS} jvm.noneF)))
(def: (field_header [name privacy state annotations type])
(-> Field jvm.Def)
@@ -843,10 +843,10 @@
(def: (header_value valueT)
(-> (Type Value) Inst)
(case (/type.primitive? valueT)
- {#.Left classT}
+ {.#Left classT}
_.NULL
- {#.Right primitiveT}
+ {.#Right primitiveT}
(cond (or (\ /type.equivalence = /type.boolean primitiveT)
(\ /type.equivalence = /type.byte primitiveT)
(\ /type.equivalence = /type.short primitiveT)
@@ -866,16 +866,16 @@
(def: (header_return returnT)
(-> (Type Return) Inst)
(case (/type.void? returnT)
- {#.Right returnT}
+ {.#Right returnT}
_.RETURN
- {#.Left valueT}
+ {.#Left valueT}
(case (/type.primitive? valueT)
- {#.Left classT}
+ {.#Left classT}
(|>> (header_value classT)
_.ARETURN)
- {#.Right primitiveT}
+ {.#Right primitiveT}
(cond (or (\ /type.equivalence = /type.boolean primitiveT)
(\ /type.equivalence = /type.byte primitiveT)
(\ /type.equivalence = /type.short primitiveT)
@@ -936,7 +936,7 @@
{#Override [[parent_name parent_variables] name strict_floating_point? annotations variables
self arguments return exceptions
body]}
- (def.method #jvm.Public
+ (def.method {jvm.#Public}
(if strict_floating_point?
jvm.strictM
jvm.noneM)
@@ -995,16 +995,16 @@
method_definitions))]
[class_name
(case inheritance
- #ffi.DefaultI
- (def.class #jvm.V1_6 #jvm.Public jvm.noneC class_name constraints super_class super_interfaces
+ {ffi.#DefaultI}
+ (def.class {jvm.#V1_6} {jvm.#Public} jvm.noneC class_name constraints super_class super_interfaces
definitions)
- #ffi.FinalI
- (def.class #jvm.V1_6 #jvm.Public jvm.finalC class_name constraints super_class super_interfaces
+ {ffi.#FinalI}
+ (def.class {jvm.#V1_6} {jvm.#Public} jvm.finalC class_name constraints super_class super_interfaces
definitions)
- #ffi.AbstractI
- (def.abstract #jvm.V1_6 #jvm.Public jvm.noneC class_name constraints super_class super_interfaces
+ {ffi.#AbstractI}
+ (def.abstract {jvm.#V1_6} {jvm.#Public} jvm.noneC class_name constraints super_class super_interfaces
definitions))]))
(def: (constructor_method_analysis archive [class_name class_tvars] method)
@@ -1033,7 +1033,7 @@
arguments)
returnT (//A.boxed_reflection_return mapping /type.void)
[_scope bodyA] (|> arguments'
- {#.Item [self selfT]}
+ {.#Item [self selfT]}
list.reversed
(list\mix scopeA.with_local (analyse archive bodyC))
(typeA.with_type returnT)
@@ -1063,7 +1063,7 @@
arguments)
returnT (//A.boxed_reflection_return mapping returnJ)
[_scope bodyA] (|> arguments'
- {#.Item [self selfT]}
+ {.#Item [self selfT]}
list.reversed
(list\mix scopeA.with_local (analyse archive bodyC))
(typeA.with_type returnT)
@@ -1091,7 +1091,7 @@
arguments)
returnT (//A.boxed_reflection_return mapping returnJ)
[_scope bodyA] (|> arguments'
- {#.Item [self selfT]}
+ {.#Item [self selfT]}
list.reversed
(list\mix scopeA.with_local (analyse archive bodyC))
(typeA.with_type returnT)
@@ -1129,19 +1129,19 @@
(-> Archive Declaration (List (Type Class)) (Method Code) (Operation (Method Analysis)))
(case method
{#Constructor method}
- (\ phase.monad each (|>> #Constructor)
+ (\ phase.monad each (|>> {#Constructor})
(constructor_method_analysis archive declaration method))
{#Override method}
- (\ phase.monad each (|>> #Override)
+ (\ phase.monad each (|>> {#Override})
(override_method_analysis archive declaration supers method))
{#Virtual method}
- (\ phase.monad each (|>> #Virtual)
+ (\ phase.monad each (|>> {#Virtual})
(virtual_method_analysis archive declaration method))
{#Static method}
- (\ phase.monad each (|>> #Static)
+ (\ phase.monad each (|>> {#Static})
(static_method_analysis archive method))
{#Abstract method}
@@ -1168,7 +1168,7 @@
(\ ! each (|>> [typeJ])
(synthesise archive termA)))
constructor_argumentsA)
- bodyS (synthesise archive {#analysis.Function (list) (//A.hide_method_body (list.size arguments) bodyA)})]
+ bodyS (synthesise archive {analysis.#Function (list) (//A.hide_method_body (list.size arguments) bodyA)})]
(in [privacy strict_floating_point? annotations method_tvars exceptions
self arguments constructor_argumentsS
(case bodyS
@@ -1187,7 +1187,7 @@
synthesise directive.synthesis]
(directive.lifted_synthesis
(do !
- [bodyS (synthesise archive {#analysis.Function (list) (//A.hide_method_body (list.size arguments) bodyA)})]
+ [bodyS (synthesise archive {analysis.#Function (list) (//A.hide_method_body (list.size arguments) bodyA)})]
(in [[super_name super_tvars] method_name strict_floating_point? annotations
method_tvars self arguments returnJ exceptionsJ
(case bodyS
@@ -1206,7 +1206,7 @@
synthesise directive.synthesis]
(directive.lifted_synthesis
(do !
- [bodyS (synthesise archive {#analysis.Function (list) (//A.hide_method_body (list.size arguments) bodyA)})]
+ [bodyS (synthesise archive {analysis.#Function (list) (//A.hide_method_body (list.size arguments) bodyA)})]
(in [name privacy final? strict_floating_point? annotations method_tvars
self arguments returnJ exceptionsJ
(case bodyS
@@ -1225,7 +1225,7 @@
synthesise directive.synthesis]
(directive.lifted_synthesis
(do !
- [bodyS (synthesise archive {#analysis.Function (list) (//A.hide_method_body (list.size arguments) bodyA)})]
+ [bodyS (synthesise archive {analysis.#Function (list) (//A.hide_method_body (list.size arguments) bodyA)})]
(in [name privacy strict_floating_point? annotations method_tvars
arguments returnJ exceptionsJ
(case bodyS
@@ -1239,19 +1239,19 @@
(-> Archive (Method Analysis) (Operation (Method Synthesis)))
(case method
{#Constructor method}
- (\ phase.monad each (|>> #Constructor)
+ (\ phase.monad each (|>> {#Constructor})
(constructor_method_synthesis archive method))
{#Override method}
- (\ phase.monad each (|>> #Override)
+ (\ phase.monad each (|>> {#Override})
(override_method_synthesis archive method))
{#Virtual method}
- (\ phase.monad each (|>> #Virtual)
+ (\ phase.monad each (|>> {#Virtual})
(virtual_method_synthesis archive method))
{#Static method}
- (\ phase.monad each (|>> #Static)
+ (\ phase.monad each (|>> {#Static})
(static_method_synthesis archive method))
{#Abstract method}
@@ -1303,7 +1303,7 @@
(do !
[bodyG (generate archive (//G.hidden_method_body (list.size arguments) bodyS))
.let [argumentsT (list\each product.right arguments)]]
- (in (def.method #jvm.Public
+ (in (def.method {jvm.#Public}
(if strict_floating_point?
jvm.strictM
jvm.noneM)
@@ -1387,13 +1387,13 @@
{#Override [[parent_name parent_variables] method_name strict_floating_point? annotations variables
self arguments return exceptions
body]}
- {#.Some [(/type.class parent_name parent_variables) method_name
+ {.#Some [(/type.class parent_name parent_variables) method_name
strict_floating_point? (list) variables
self arguments return exceptions
body]}
_
- #.None))
+ {.#None}))
(def: (jvm::class class_loader)
(-> java/lang/ClassLoader ..Handler)
@@ -1435,7 +1435,7 @@
methodsS (monad.each ! (method_synthesis archive) methodsA)
methodsG (monad.each ! (method_generation archive super_class) methodsS)
.let [directive [class_name
- (def.class #jvm.V1_6 #jvm.Public jvm.noneC class_name
+ (def.class {jvm.#V1_6} {jvm.#Public} jvm.noneC class_name
(list\each ..constraint type_variables)
super_class
super_interfaces
@@ -1445,7 +1445,7 @@
(do !
[artifact_id (generation.learn_custom class_name)
_ (generation.execute! directive)
- _ (generation.save! artifact_id {#.Some class_name} directive)
+ _ (generation.save! artifact_id {.#Some class_name} directive)
_ (generation.log! (format "JVM Class " (%.text class_name)))]
(in directive.no_requirements)))))]))
@@ -1460,19 +1460,19 @@
(function (_ extension_name phase archive [[class_name type_variables] supers annotations method_declarations])
(do [! phase.monad]
[.let [directive [class_name
- (def.interface #jvm.V1_6 #jvm.Public jvm.noneC class_name
+ (def.interface {jvm.#V1_6} {jvm.#Public} jvm.noneC class_name
(list\each ..constraint type_variables)
supers
(|> method_declarations
(list\each (function (_ (^slots [#name #annotations #type_variables #exceptions #arguments #return]))
- (def.abstract_method #jvm.Public jvm.noneM name
+ (def.abstract_method {jvm.#Public} jvm.noneM name
(/type.method [type_variables arguments return exceptions]))))
def.fuse))]]]
(directive.lifted_generation
(do !
[artifact_id (generation.learn_custom class_name)
_ (generation.execute! directive)
- _ (generation.save! artifact_id {#.Some class_name} directive)
+ _ (generation.save! artifact_id {.#Some class_name} directive)
_ (generation.log! (format "JVM Interface " (%.text class_name)))]
(in directive.no_requirements)))))]))