aboutsummaryrefslogtreecommitdiff
path: root/luxc
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--luxc/src/lux/analyser/proc/common.clj2
-rw-r--r--luxc/src/lux/compiler/js/proc/common.clj2
-rw-r--r--luxc/src/lux/compiler/jvm/proc/common.clj2
3 files changed, 6 insertions, 0 deletions
diff --git a/luxc/src/lux/analyser/proc/common.clj b/luxc/src/lux/analyser/proc/common.clj
index 9a295b1eb..ff85600ab 100644
--- a/luxc/src/lux/analyser/proc/common.clj
+++ b/luxc/src/lux/analyser/proc/common.clj
@@ -272,6 +272,7 @@
^:private analyse-deg-min-value &type/Deg ["deg" "min-value"]
^:private analyse-deg-max-value &type/Deg ["deg" "max-value"]
+ ^:private analyse-real-smallest-value &type/Real ["real" "smallest-value"]
^:private analyse-real-min-value &type/Real ["real" "min-value"]
^:private analyse-real-max-value &type/Real ["real" "max-value"]
^:private analyse-real-not-a-number &type/Real ["real" "not-a-number"]
@@ -591,6 +592,7 @@
"<" (analyse-real-lt analyse exo-type ?values)
"encode" (analyse-real-encode analyse exo-type ?values)
"decode" (analyse-real-decode analyse exo-type ?values)
+ "smallest-value" (analyse-real-smallest-value analyse exo-type ?values)
"min-value" (analyse-real-min-value analyse exo-type ?values)
"max-value" (analyse-real-max-value analyse exo-type ?values)
"not-a-number" (analyse-real-not-a-number analyse exo-type ?values)
diff --git a/luxc/src/lux/compiler/js/proc/common.clj b/luxc/src/lux/compiler/js/proc/common.clj
index cd67104f4..f6591c8fa 100644
--- a/luxc/src/lux/compiler/js/proc/common.clj
+++ b/luxc/src/lux/compiler/js/proc/common.clj
@@ -178,6 +178,7 @@
^:private compile-deg-min-value &&lux/compile-deg 0
^:private compile-deg-max-value &&lux/compile-deg -1
+ ^:private compile-real-smallest-value &&lux/compile-real Double/MIN_VALUE
^:private compile-real-min-value &&lux/compile-real (* -1.0 Double/MAX_VALUE)
^:private compile-real-max-value &&lux/compile-real Double/MAX_VALUE
@@ -552,6 +553,7 @@
"<" (compile-real-lt compile ?values special-args)
"encode" (compile-real-encode compile ?values special-args)
"decode" (compile-real-decode compile ?values special-args)
+ "smallest-value" (compile-real-smallest-value compile ?values special-args)
"max-value" (compile-real-max-value compile ?values special-args)
"min-value" (compile-real-min-value compile ?values special-args)
"not-a-number" (compile-real-not-a-number compile ?values special-args)
diff --git a/luxc/src/lux/compiler/jvm/proc/common.clj b/luxc/src/lux/compiler/jvm/proc/common.clj
index ffb621c3b..c8623985a 100644
--- a/luxc/src/lux/compiler/jvm/proc/common.clj
+++ b/luxc/src/lux/compiler/jvm/proc/common.clj
@@ -378,6 +378,7 @@
^:private compile-deg-min-value (.visitLdcInsn 0) &&/wrap-long
^:private compile-deg-max-value (.visitLdcInsn -1) &&/wrap-long
+ ^:private compile-real-smallest-value (.visitLdcInsn Double/MIN_VALUE) &&/wrap-double
^:private compile-real-min-value (.visitLdcInsn (* -1.0 Double/MAX_VALUE)) &&/wrap-double
^:private compile-real-max-value (.visitLdcInsn Double/MAX_VALUE) &&/wrap-double
@@ -996,6 +997,7 @@
"=" (compile-real-eq compile ?values special-args)
"<" (compile-real-lt compile ?values special-args)
"hash" (compile-real-hash compile ?values special-args)
+ "smallest-value" (compile-real-smallest-value compile ?values special-args)
"max-value" (compile-real-max-value compile ?values special-args)
"min-value" (compile-real-min-value compile ?values special-args)
"not-a-number" (compile-real-not-a-number compile ?values special-args)