The home of most of the protocol-based extensible generic operations offered by
Emmy. The bulk of the others live in emmy.generic
.
See the Generics
cljdocs
for a detailed discussion of how to use and extend the generic operations
defined in emmy.generic
and emmy.value
.
The home of most of the protocol-based extensible generic operations offered by Emmy. The bulk of the others live in [[emmy.generic]]. See [the `Generics` cljdocs](https://cljdoc.org/d/org.mentat/emmy/CURRENT/doc/basics/generics) for a detailed discussion of how to use and extend the generic operations defined in [[emmy.generic]] and [[emmy.value]].
(compare x y)
Comparator. Returns a negative number, zero, or a positive number when x is logically 'less than', 'equal to', or 'greater than' y. Same as Java x.compareTo(y) except it also works for nil, and compares numbers and collections in a type-independent manner. x must implement Comparable
Comparator. Returns a negative number, zero, or a positive number when x is logically 'less than', 'equal to', or 'greater than' y. Same as Java x.compareTo(y) except it also works for nil, and compares numbers and collections in a type-independent manner. x must implement Comparable
Comparator. Clone of [[cljs.core/compare]] that works with the expanded Emmy numeric tower.
Returns a negative number, zero, or a positive number when x is logically 'less than', 'equal to', or 'greater than' y. Uses IComparable if available and google.array.defaultCompare for objects of the same type and special-cases nil to be less than any other object.
Comparator. Clone of [[cljs.core/compare]] that works with the expanded Emmy numeric tower. Returns a negative number, zero, or a positive number when x is logically 'less than', 'equal to', or 'greater than' y. Uses IComparable if available and google.array.defaultCompare for objects of the same type and special-cases nil to be less than any other object.
(integral? x)
Returns true if x is an integral number, false otherwise.
Returns true if x is an integral number, false otherwise.
(kind-predicate x)
Returns a predicate that returns true if its argument matches the supplied
kind-keyword k
, false otherwise.
Returns a predicate that returns true if its argument matches the supplied kind-keyword `k`, false otherwise.
(make-es6-callable s k)
Make s callable. This is done by re-hosting all of the object properties of s
in a new native JS function which delegates to the Clojure application. The
result of the application of this new function is supplied to the continuation k
.
Make s callable. This is done by re-hosting all of the object properties of `s` in a new native JS function which delegates to the Clojure application. The result of the application of this new function is supplied to the continuation `k`.
(native-integral? x)
Returns true if x is an integral number that Clojure's math operations work with, false otherwise.
Returns true if x is an integral number that Clojure's math operations work with, false otherwise.
(number? x)
Returns true if x
is any number type in the numeric tower:
false otherwise.
Returns true if `x` is any number type in the numeric tower: - integral - floating point - complex - fraction false otherwise.
(numerical? x)
Returns true if x
is a purely numerical value and should be considered for
numerical simplifications, such as $x * 1 == x$ or $x * 0 ==
0$.
[[numerical?]] should return false
if x
has additional, non-numerical
structure that should be preserved.
Returns true if `x` is a purely numerical value and should be considered for numerical simplifications, such as $x * 1 == x$ or $x * 0 == 0$. [[numerical?]] should return `false` if `x` has additional, non-numerical structure that should be preserved.
(real? x)
Returns true if x
is either an integral number or a floating point number (i.e.,
in the numeric tower but not complex), false otherwise.
Returns true if `x` is either an integral number or a floating point number (i.e., in the numeric tower but not complex), false otherwise.
(scalar? x)
Returns true for anything that derives from ::scalar
, i.e., any numeric type in
the numeric tower that responds true to number?
, plus symbolic expressions
generated by emmy.abstract.number/literal-number
,
false otherwise.
Returns true for anything that derives from `::scalar`, i.e., any numeric type in the numeric tower that responds true to [[number?]], plus symbolic expressions generated by [[emmy.abstract.number/literal-number]], false otherwise.
(set-js-meta! o m)
Mutates the native JS object o
to have the given metadata. The
previous metadata, if any, is discarded. o
is returned.
Mutates the native JS object `o` to have the given metadata. The previous metadata, if any, is discarded. `o` is returned.
(within ε)
Returns a function that tests whether two values are within ε of each other.
Returns a function that tests whether two values are within ε of each other.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close