aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/lux/tool/compiler/phase/generation/jvm/runtime.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/lux/tool/compiler/phase/generation/jvm/runtime.lux')
-rw-r--r--stdlib/source/lux/tool/compiler/phase/generation/jvm/runtime.lux30
1 files changed, 30 insertions, 0 deletions
diff --git a/stdlib/source/lux/tool/compiler/phase/generation/jvm/runtime.lux b/stdlib/source/lux/tool/compiler/phase/generation/jvm/runtime.lux
new file mode 100644
index 000000000..5a84c4990
--- /dev/null
+++ b/stdlib/source/lux/tool/compiler/phase/generation/jvm/runtime.lux
@@ -0,0 +1,30 @@
+(.module:
+ [lux (#- Definition)
+ [data
+ [binary (#+ Binary)]]
+ [target
+ [jvm
+ ["_" program (#+ Label Program)]]]]
+ ["." ///
+ [///
+ [reference (#+ Register)]]]
+ )
+
+(type: #export Byte-Code Binary)
+
+(type: #export Definition [Text Byte-Code])
+
+(type: #export Anchor [Label Register])
+
+(template [<name> <base>]
+ [(type: #export <name>
+ (<base> Anchor (Program Any) Definition))]
+
+ [Operation ///.Operation]
+ [Phase ///.Phase]
+ [Handler ///.Handler]
+ [Bundle ///.Bundle]
+ )
+
+(type: #export (Generator i)
+ (-> i Phase (Operation (Program Any))))