From b216900093c905b3b20dd45c69e577b192e2f7a3 Mon Sep 17 00:00:00 2001 From: Eduardo Julian Date: Wed, 25 Aug 2021 16:47:50 -0400 Subject: Updates to the Lua compiler. --- lux-jvm/source/luxc/lang/directive/jvm.lux | 24 ++++++++++++---------- lux-jvm/source/luxc/lang/host/jvm.lux | 33 ++++++++++++++++-------------- 2 files changed, 31 insertions(+), 26 deletions(-) (limited to 'lux-jvm') diff --git a/lux-jvm/source/luxc/lang/directive/jvm.lux b/lux-jvm/source/luxc/lang/directive/jvm.lux index 5511b5913..b52d4b63e 100644 --- a/lux-jvm/source/luxc/lang/directive/jvm.lux +++ b/lux-jvm/source/luxc/lang/directive/jvm.lux @@ -618,12 +618,13 @@ .any) (type: Method_Declaration - {#name Text - #annotations (List Annotation) - #type_variables (List (Type Var)) - #exceptions (List (Type Class)) - #arguments (List (Type Value)) - #return (Type Value)}) + (Record + {#name Text + #annotations (List Annotation) + #type_variables (List (Type Var)) + #exceptions (List (Type Class)) + #arguments (List (Type Value)) + #return (Type Value)})) (def: method_declaration (Parser Method_Declaration) @@ -714,11 +715,12 @@ (List Argument) (Type Return) (List (Type Class))]) (type: (Method a) - (#Constructor (Constructor a)) - (#Override (Override a)) - (#Virtual (Virtual a)) - (#Static (Static a)) - (#Abstract Abstract)) + (Variant + (#Constructor (Constructor a)) + (#Override (Override a)) + (#Virtual (Virtual a)) + (#Static (Static a)) + (#Abstract Abstract))) (def: constructor (Parser (Constructor Code)) diff --git a/lux-jvm/source/luxc/lang/host/jvm.lux b/lux-jvm/source/luxc/lang/host/jvm.lux index 305d04f8c..3b03f1510 100644 --- a/lux-jvm/source/luxc/lang/host/jvm.lux +++ b/lux-jvm/source/luxc/lang/host/jvm.lux @@ -46,20 +46,22 @@ org/objectweb/asm/Label) (type: .public Visibility - #Public - #Protected - #Private - #Default) + (Variant + #Public + #Protected + #Private + #Default)) (type: .public Version - #V1_1 - #V1_2 - #V1_3 - #V1_4 - #V1_5 - #V1_6 - #V1_7 - #V1_8) + (Variant + #V1_1 + #V1_2 + #V1_3 + #V1_4 + #V1_5 + #V1_6 + #V1_7 + #V1_8)) (type: .public ByteCode Binary) @@ -104,9 +106,10 @@ (with@ (~ (code.local_tag option)) #1))))) options)] (in (list& (` (type: .public (~ g!type) - (~ (code.record (list/each (function (_ tag) - [tag (` .Bit)]) - g!tags+))))) + (.Record + (~ (code.record (list/each (function (_ tag) + [tag (` .Bit)]) + g!tags+)))))) (` (def: .public (~ g!none) (~ g!type) -- cgit v1.2.3