diff options
Diffstat (limited to 'stdlib/source/library/lux/target/jvm/bytecode/address.lux')
-rw-r--r-- | stdlib/source/library/lux/target/jvm/bytecode/address.lux | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/stdlib/source/library/lux/target/jvm/bytecode/address.lux b/stdlib/source/library/lux/target/jvm/bytecode/address.lux index 8a42afb41..d7f2f612f 100644 --- a/stdlib/source/library/lux/target/jvm/bytecode/address.lux +++ b/stdlib/source/library/lux/target/jvm/bytecode/address.lux @@ -23,18 +23,20 @@ ["#." unsigned (#+ U2)] ["#." signed (#+ S4)]]]]) -(abstract: #export Address +(abstract: .public Address + {} + U2 - (def: #export value + (def: .public value (-> Address U2) (|>> :representation)) - (def: #export start + (def: .public start Address (|> 0 ///unsigned.u2 try.assumed :abstraction)) - (def: #export (move distance) + (def: .public (move distance) (-> U2 (-> Address (Try Address))) (|>> :representation (///unsigned.+/2 distance) @@ -44,19 +46,19 @@ (-> Address (Try S4)) (|>> :representation ///unsigned.value .int ///signed.s4)) - (def: #export (jump from to) + (def: .public (jump from to) (-> Address Address (Try Big_Jump)) (do try.monad [from (with_sign from) to (with_sign to)] (///signed.-/4 from to))) - (def: #export (after? reference subject) + (def: .public (after? reference subject) (-> Address Address Bit) (n.> (|> reference :representation ///unsigned.value) (|> subject :representation ///unsigned.value))) - (implementation: #export equivalence + (implementation: .public equivalence (Equivalence Address) (def: (= reference subject) @@ -64,11 +66,11 @@ (:representation reference) (:representation subject)))) - (def: #export writer + (def: .public writer (Writer Address) (|>> :representation ///unsigned.writer/2)) - (def: #export format + (def: .public format (Format Address) (|>> :representation ///unsigned.value %.nat)) ) |