diff options
Diffstat (limited to 'stdlib/source/library/lux/target/jvm/constant.lux')
-rw-r--r-- | stdlib/source/library/lux/target/jvm/constant.lux | 40 |
1 files changed, 22 insertions, 18 deletions
diff --git a/stdlib/source/library/lux/target/jvm/constant.lux b/stdlib/source/library/lux/target/jvm/constant.lux index 7f2a7aa26..229dd247f 100644 --- a/stdlib/source/library/lux/target/jvm/constant.lux +++ b/stdlib/source/library/lux/target/jvm/constant.lux @@ -34,24 +34,26 @@ [encoding ["#." unsigned]]]]) -(type: #export UTF8 Text) +(type: .public UTF8 Text) (def: utf8_writer (Writer UTF8) binaryF.utf8/16) -(abstract: #export Class +(abstract: .public Class + {} + (Index UTF8) - (def: #export index + (def: .public index (-> Class (Index UTF8)) (|>> :representation)) - (def: #export class + (def: .public class (-> (Index UTF8) Class) (|>> :abstraction)) - (def: #export class_equivalence + (def: .public class_equivalence (Equivalence Class) (\ equivalence.functor map ..index @@ -66,7 +68,7 @@ ["#::." (#static floatToRawIntBits #manual [float] int)]) -(implementation: #export float_equivalence +(implementation: .public float_equivalence (Equivalence java/lang/Float) (def: (= parameter subject) @@ -82,14 +84,16 @@ ["#::." (#static doubleToRawLongBits [double] long)]) -(abstract: #export (Value kind) +(abstract: .public (Value kind) + {} + kind - (def: #export value + (def: .public value (All [kind] (-> (Value kind) kind)) (|>> :representation)) - (def: #export (value_equivalence Equivalence<kind>) + (def: .public (value_equivalence Equivalence<kind>) (All [kind] (-> (Equivalence kind) (Equivalence (Value kind)))) @@ -98,9 +102,9 @@ Equivalence<kind>)) (template [<constructor> <type> <marker>] - [(type: #export <type> (Value <marker>)) + [(type: .public <type> (Value <marker>)) - (def: #export <constructor> + (def: .public <constructor> (-> <marker> <type>) (|>> :abstraction))] @@ -126,16 +130,16 @@ ) ) -(type: #export (Name_And_Type of) +(type: .public (Name_And_Type of) {#name (Index UTF8) #descriptor (Index (Descriptor of))}) -(type: #export (Reference of) +(type: .public (Reference of) {#class (Index Class) #name_and_type (Index (Name_And_Type of))}) (template [<type> <equivalence> <writer>] - [(def: #export <equivalence> + [(def: .public <equivalence> (Equivalence (<type> Any)) ($_ product.equivalence //index.equivalence @@ -151,7 +155,7 @@ [Reference reference_equivalence reference_writer] ) -(type: #export Constant +(type: .public Constant (#UTF8 UTF8) (#Integer Integer) (#Float Float) @@ -164,7 +168,7 @@ (#Interface_Method (Reference //category.Method)) (#Name_And_Type (Name_And_Type Any))) -(def: #export (size constant) +(def: .public (size constant) (-> Constant Nat) (case constant (^or (#Long _) (#Double _)) @@ -173,7 +177,7 @@ _ 1)) -(def: #export equivalence +(def: .public equivalence (Equivalence Constant) ## TODO: Delete the explicit "implementation" and use the combinator ## version below as soon as the new format for variants is implemented. @@ -219,7 +223,7 @@ ## ) ) -(def: #export writer +(def: .public writer (Writer Constant) (with_expansions [<constants> (as_is [#UTF8 /tag.utf8 ..utf8_writer] [#Integer /tag.integer ..integer_writer] |