diff options
Diffstat (limited to 'stdlib/source/test/lux/target/jvm.lux')
-rw-r--r-- | stdlib/source/test/lux/target/jvm.lux | 108 |
1 files changed, 54 insertions, 54 deletions
diff --git a/stdlib/source/test/lux/target/jvm.lux b/stdlib/source/test/lux/target/jvm.lux index 190c2f65e..9fa008544 100644 --- a/stdlib/source/test/lux/target/jvm.lux +++ b/stdlib/source/test/lux/target/jvm.lux @@ -308,10 +308,10 @@ (do [! random.monad] [expected (\ ! each (i64.and (i64.mask <bits>)) random.nat)] (<| (_.lifted <message>) - (..bytecode (for {@.old + (..bytecode (for [@.old (|>> (:as <type>) <to_long> ("jvm leq" expected)) @.jvm - (|>> (:as <type>) <to_long> "jvm object cast" ("jvm long =" ("jvm object cast" (:as java/lang/Long expected))))})) + (|>> (:as <type>) <to_long> "jvm object cast" ("jvm long =" ("jvm object cast" (:as java/lang/Long expected))))])) (do /.monad [_ (<push> (|> expected .int <signed> try.trusted))] <wrap>))))] @@ -324,13 +324,13 @@ [(template: (<name> <old_extension> <new_extension>) [(: (-> <type> <type> <type>) (function (_ parameter subject) - (for {@.old + (for [@.old (<old_extension> subject parameter) @.jvm ("jvm object cast" (<new_extension> ("jvm object cast" parameter) - ("jvm object cast" subject)))})))])] + ("jvm object cast" subject)))])))])] [int/2 java/lang/Integer] [long/2 java/lang/Long] @@ -341,23 +341,23 @@ (template: (int+long/2 <old_extension> <new_extension>) [(: (-> java/lang/Integer java/lang/Long java/lang/Long) (function (_ parameter subject) - (for {@.old + (for [@.old (<old_extension> subject parameter) @.jvm ("jvm object cast" (<new_extension> ("jvm object cast" parameter) - ("jvm object cast" subject)))})))]) + ("jvm object cast" subject)))])))]) (def: int Test (let [int (: (-> java/lang/Integer (Bytecode Any) (Random Bit)) (function (_ expected bytecode) - (<| (..bytecode (for {@.old + (<| (..bytecode (for [@.old (|>> (:as java/lang/Integer) ("jvm ieq" expected)) @.jvm - (|>> (:as java/lang/Integer) "jvm object cast" ("jvm int =" ("jvm object cast" expected)))})) + (|>> (:as java/lang/Integer) "jvm object cast" ("jvm int =" ("jvm object cast" expected)))])) (do /.monad [_ bytecode] ..$Integer::wrap)))) @@ -434,11 +434,11 @@ Test (let [long (: (-> java/lang/Long (Bytecode Any) (Random Bit)) (function (_ expected bytecode) - (<| (..bytecode (for {@.old + (<| (..bytecode (for [@.old (|>> (:as Int) (i.= expected)) @.jvm - (|>> (:as java/lang/Long) "jvm object cast" ("jvm long =" ("jvm object cast" expected)))})) + (|>> (:as java/lang/Long) "jvm object cast" ("jvm long =" ("jvm object cast" expected)))])) (do /.monad [_ bytecode] ..$Long::wrap)))) @@ -507,11 +507,11 @@ ... (i.< (:as Int reference) (:as Int subject)) (:as java/lang/Long -1))]] - (<| (..bytecode (for {@.old + (<| (..bytecode (for [@.old (|>> (:as Int) (i.= expected)) @.jvm - (|>> (:as java/lang/Long) "jvm object cast" ("jvm long =" ("jvm object cast" expected)))})) + (|>> (:as java/lang/Long) "jvm object cast" ("jvm long =" ("jvm object cast" expected)))])) (do /.monad [_ (..$Long::literal subject) _ (..$Long::literal reference) @@ -533,7 +533,7 @@ Test (let [float (: (-> java/lang/Float (Bytecode Any) (Random Bit)) (function (_ expected bytecode) - (<| (..bytecode (for {@.old + (<| (..bytecode (for [@.old (function (_ actual) (or (|> actual (:as java/lang/Float) ("jvm feq" expected)) (and (f.not_a_number? (:as Frac (ffi.float_to_double expected))) @@ -543,7 +543,7 @@ (function (_ actual) (or (|> actual (:as java/lang/Float) "jvm object cast" ("jvm float =" ("jvm object cast" expected))) (and (f.not_a_number? (:as Frac (ffi.float_to_double expected))) - (f.not_a_number? (:as Frac (ffi.float_to_double (:as java/lang/Float actual)))))))})) + (f.not_a_number? (:as Frac (ffi.float_to_double (:as java/lang/Float actual)))))))])) (do /.monad [_ bytecode] ..$Float::wrap)))) @@ -595,11 +595,11 @@ ..$Float::random)] reference valid_float subject valid_float - .let [expected (if (for {@.old + .let [expected (if (for [@.old ("jvm feq" reference subject) @.jvm - ("jvm float =" ("jvm object cast" reference) ("jvm object cast" subject))}) + ("jvm float =" ("jvm object cast" reference) ("jvm object cast" subject))]) +0 (if (standard reference subject) +1 @@ -613,11 +613,11 @@ ..$Long::wrap))))) comparison_standard (: (-> java/lang/Float java/lang/Float Bit) (function (_ reference subject) - (for {@.old + (for [@.old ("jvm fgt" subject reference) @.jvm - ("jvm float <" ("jvm object cast" subject) ("jvm object cast" reference))}))) + ("jvm float <" ("jvm object cast" subject) ("jvm object cast" reference))]))) comparison ($_ _.and (_.lifted "FCMPL" (comparison /.fcmpl comparison_standard)) (_.lifted "FCMPG" (comparison /.fcmpg comparison_standard)))] @@ -634,7 +634,7 @@ Test (let [double (: (-> java/lang/Double (Bytecode Any) (Random Bit)) (function (_ expected bytecode) - (<| (..bytecode (for {@.old + (<| (..bytecode (for [@.old (function (_ actual) (or (|> actual (:as java/lang/Double) ("jvm deq" expected)) (and (f.not_a_number? (:as Frac expected)) @@ -644,7 +644,7 @@ (function (_ actual) (or (|> actual (:as java/lang/Double) "jvm object cast" ("jvm double =" ("jvm object cast" expected))) (and (f.not_a_number? (:as Frac expected)) - (f.not_a_number? (:as Frac actual)))))})) + (f.not_a_number? (:as Frac actual)))))])) (do /.monad [_ bytecode] ..$Double::wrap)))) @@ -689,11 +689,11 @@ (do random.monad [reference ..valid_double subject ..valid_double - .let [expected (if (for {@.old + .let [expected (if (for [@.old ("jvm deq" reference subject) @.jvm - ("jvm double =" ("jvm object cast" reference) ("jvm object cast" subject))}) + ("jvm double =" ("jvm object cast" reference) ("jvm object cast" subject))]) +0 (if (standard reference subject) +1 @@ -708,11 +708,11 @@ ... https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-6.html#jvms-6.5.dcmp_op comparison_standard (: (-> java/lang/Double java/lang/Double Bit) (function (_ reference subject) - (for {@.old + (for [@.old ("jvm dgt" subject reference) @.jvm - ("jvm double <" ("jvm object cast" subject) ("jvm object cast" reference))}))) + ("jvm double <" ("jvm object cast" subject) ("jvm object cast" reference))]))) comparison ($_ _.and (_.lifted "DCMPL" (comparison /.dcmpl comparison_standard)) (_.lifted "DCMPG" (comparison /.dcmpg comparison_standard)))] @@ -790,11 +790,11 @@ (do random.monad [expected (random.only (|>> (:as Frac) f.not_a_number? not) ..$Double::random)]) - (..bytecode (for {@.old + (..bytecode (for [@.old (|>> (:as java/lang/Double) ("jvm deq" expected)) @.jvm - (|>> (:as java/lang/Double) "jvm object cast" ("jvm double =" ("jvm object cast" expected)))})) + (|>> (:as java/lang/Double) "jvm object cast" ("jvm double =" ("jvm object cast" expected)))])) (do /.monad [_ (/.double expected)] (/.invokestatic ..$Double "valueOf" (/type.method [(list) (list /type.double) ..$Double (list)])))) @@ -811,11 +811,11 @@ (do random.monad [expected (random.only (|>> (:as Frac) f.not_a_number? not) ..$Double::random)]) - (..bytecode (for {@.old + (..bytecode (for [@.old (|>> (:as java/lang/Double) ("jvm deq" expected)) @.jvm - (|>> (:as java/lang/Double) "jvm object cast" ("jvm double =" ("jvm object cast" expected)))})) + (|>> (:as java/lang/Double) "jvm object cast" ("jvm double =" ("jvm object cast" expected)))])) (do /.monad [_ (/.new ..$Double) _ /.dup @@ -839,12 +839,12 @@ part0 ..$Long::random part1 ..$Long::random .let [expected (: java/lang/Long - (for {@.old + (for [@.old ("jvm ladd" part0 part1) @.jvm ("jvm object cast" - ("jvm long +" ("jvm object cast" part0) ("jvm object cast" part1)))})) + ("jvm long +" ("jvm object cast" part0) ("jvm object cast" part1)))])) $Self (/type.class class_name (list)) class_field "class_field" object_field "object_field" @@ -958,59 +958,59 @@ (_.context "byte" (array (/.newarray /instruction.t_byte) $Byte::random $Byte::literal [/.bastore /.baload $Byte::wrap] (function (_ expected) - (for {@.old + (for [@.old (|>> (:as java/lang/Byte) ffi.byte_to_long ("jvm leq" (ffi.byte_to_long expected))) @.jvm - (|>> (:as java/lang/Byte) ffi.byte_to_long "jvm object cast" ("jvm long =" ("jvm object cast" (ffi.byte_to_long (:as java/lang/Byte expected)))))})))) + (|>> (:as java/lang/Byte) ffi.byte_to_long "jvm object cast" ("jvm long =" ("jvm object cast" (ffi.byte_to_long (:as java/lang/Byte expected)))))])))) (_.context "short" (array (/.newarray /instruction.t_short) $Short::random $Short::literal [/.sastore /.saload $Short::wrap] (function (_ expected) - (for {@.old + (for [@.old (|>> (:as java/lang/Short) ffi.short_to_long ("jvm leq" (ffi.short_to_long expected))) @.jvm - (|>> (:as java/lang/Short) ffi.short_to_long "jvm object cast" ("jvm long =" ("jvm object cast" (ffi.short_to_long (:as java/lang/Short expected)))))})))) + (|>> (:as java/lang/Short) ffi.short_to_long "jvm object cast" ("jvm long =" ("jvm object cast" (ffi.short_to_long (:as java/lang/Short expected)))))])))) (_.context "int" (array (/.newarray /instruction.t_int) $Integer::random $Integer::literal [/.iastore /.iaload $Integer::wrap] (function (_ expected) - (for {@.old + (for [@.old (|>> (:as java/lang/Integer) ("jvm ieq" (:as java/lang/Integer expected))) @.jvm - (|>> (:as java/lang/Integer) "jvm object cast" ("jvm int =" ("jvm object cast" (:as java/lang/Integer expected))))})))) + (|>> (:as java/lang/Integer) "jvm object cast" ("jvm int =" ("jvm object cast" (:as java/lang/Integer expected))))])))) (_.context "long" (array (/.newarray /instruction.t_long) $Long::random $Long::literal [/.lastore /.laload $Long::wrap] (function (_ expected) - (for {@.old + (for [@.old (|>> (:as java/lang/Long) ("jvm leq" expected)) @.jvm - (|>> (:as java/lang/Long) "jvm object cast" ("jvm long =" ("jvm object cast" (:as java/lang/Long expected))))})))) + (|>> (:as java/lang/Long) "jvm object cast" ("jvm long =" ("jvm object cast" (:as java/lang/Long expected))))])))) (_.context "float" (array (/.newarray /instruction.t_float) ..valid_float $Float::literal [/.fastore /.faload $Float::wrap] (function (_ expected) - (for {@.old + (for [@.old (|>> (:as java/lang/Float) ("jvm feq" expected)) @.jvm - (|>> (:as java/lang/Float) "jvm object cast" ("jvm float =" ("jvm object cast" (:as java/lang/Float expected))))})))) + (|>> (:as java/lang/Float) "jvm object cast" ("jvm float =" ("jvm object cast" (:as java/lang/Float expected))))])))) (_.context "double" (array (/.newarray /instruction.t_double) ..valid_double $Double::literal [/.dastore /.daload $Double::wrap] (function (_ expected) - (for {@.old + (for [@.old (|>> (:as java/lang/Double) ("jvm deq" expected)) @.jvm - (|>> (:as java/lang/Double) "jvm object cast" ("jvm double =" ("jvm object cast" (:as java/lang/Double expected))))})))) + (|>> (:as java/lang/Double) "jvm object cast" ("jvm double =" ("jvm object cast" (:as java/lang/Double expected))))])))) (_.context "char" (array (/.newarray /instruction.t_char) $Character::random $Character::literal [/.castore /.caload $Character::wrap] (function (_ expected) - (for {@.old + (for [@.old (|>> (:as java/lang/Character) ("jvm ceq" expected)) @.jvm - (|>> (:as java/lang/Character) "jvm object cast" ("jvm char =" ("jvm object cast" (:as java/lang/Character expected))))})))) + (|>> (:as java/lang/Character) "jvm object cast" ("jvm char =" ("jvm object cast" (:as java/lang/Character expected))))])))) (_.context "object" (array (/.anewarray ..$String) $String::random $String::literal [/.aastore /.aaload /.nop] (function (_ expected) (|>> (:as Text) (text\= (:as Text expected)))))) @@ -1040,11 +1040,11 @@ (template: (!::= <type> <old> <new>) [(: (-> <type> Any Bit) (function (_ expected) - (for {@.old + (for [@.old (|>> (:as <type>) (<old> expected)) @.jvm - (|>> (:as <type>) "jvm object cast" (<new> ("jvm object cast" (:as <type> expected))))})))]) + (|>> (:as <type>) "jvm object cast" (<new> ("jvm object cast" (:as <type> expected))))])))]) (def: conversion Test @@ -1071,20 +1071,20 @@ (_.lifted "I2D" (conversion ..$Integer::primitive ..$Double::primitive /.i2d (|>> ffi.int_to_double) double::=)) (_.lifted "I2B" (conversion ..$Integer::primitive ..$Byte::primitive /.i2b (|>> ffi.int_to_byte) (function (_ expected) - (for {@.old + (for [@.old (|>> (:as java/lang/Byte) ffi.byte_to_long ("jvm leq" (ffi.byte_to_long expected))) @.jvm - (|>> (:as java/lang/Byte) ffi.byte_to_long "jvm object cast" ("jvm long =" ("jvm object cast" (ffi.byte_to_long (:as java/lang/Byte expected)))))})))) + (|>> (:as java/lang/Byte) ffi.byte_to_long "jvm object cast" ("jvm long =" ("jvm object cast" (ffi.byte_to_long (:as java/lang/Byte expected)))))])))) (_.lifted "I2C" (conversion ..$Integer::primitive ..$Character::primitive /.i2c (|>> ffi.int_to_char) (!::= java/lang/Character "jvm ceq" "jvm char ="))) (_.lifted "I2S" (conversion ..$Integer::primitive ..$Short::primitive /.i2s (|>> ffi.int_to_short) (function (_ expected) - (for {@.old + (for [@.old (|>> (:as java/lang/Short) ffi.short_to_long ("jvm leq" (ffi.short_to_long expected))) @.jvm - (|>> (:as java/lang/Short) ffi.short_to_long "jvm object cast" ("jvm long =" ("jvm object cast" (ffi.short_to_long (:as java/lang/Short expected)))))})))))) + (|>> (:as java/lang/Short) ffi.short_to_long "jvm object cast" ("jvm long =" ("jvm object cast" (ffi.short_to_long (:as java/lang/Short expected)))))])))))) (<| (_.context "long") ($_ _.and (_.lifted "L2I" (conversion ..$Long::primitive ..$Integer::primitive /.l2i (|>> ffi.long_to_int) int::=)) @@ -1156,7 +1156,7 @@ increment (\ ! each (|>> (n.% 100) /unsigned.u1 try.trusted) random.nat) .let [expected (: java/lang/Long - (for {@.old + (for [@.old ("jvm ladd" (ffi.byte_to_long base) (.int (/unsigned.value increment))) @@ -1165,7 +1165,7 @@ ("jvm object cast" ("jvm long +" ("jvm object cast" (ffi.byte_to_long base)) - ("jvm object cast" (:as java/lang/Long (/unsigned.value increment)))))}))]] + ("jvm object cast" (:as java/lang/Long (/unsigned.value increment)))))]))]] (..bytecode (|>> (:as Int) (i.= (:as Int expected))) (do /.monad [_ (..$Byte::literal base) @@ -1416,11 +1416,11 @@ reference ..$Integer::random subject (|> ..$Integer::random (random.only (|>> ((!::= java/lang/Integer "jvm ieq" "jvm int =") reference) not))) - .let [[lesser greater] (if (for {@.old + .let [[lesser greater] (if (for [@.old ("jvm ilt" reference subject) @.jvm - ("jvm int <" ("jvm object cast" subject) ("jvm object cast" reference))}) + ("jvm int <" ("jvm object cast" subject) ("jvm object cast" reference))]) [reference subject] [subject reference]) int_comparison ($_ _.and |