(boxed f x)
Transform the quantity's number by any fn (i.e. fmap on the quantity-functor). Also works for numbers.
Beware:
Transform the quantity's number by any fn (i.e. fmap on the quantity-functor). Also works for numbers. Beware: 1. The return value is not checked, and quantities with non-numeric values will cause parts of broch to break. 2. In cljs, broch quantities will sometimes have a ratio number type that is not a regular js Number. These will fail with clojure.core arithmetic ops (+,-,*,/), so use the ops from broch.core instead.
(compatible-units quantity)
Returns units with the same measure as quantity.
Returns units with the same measure as quantity.
(composition q)
The composition of this quantity.
The composition of this quantity.
(defunit unit-fn-name measure symb scale-or-comp)
(defunit unit-fn-name measure symb scaling composition)
Can be used to define units, but it's not compatible with cljs. Alternatively use the form this expands to: (def unit-fn-name (new-unit measure symbol scaling composition))
Can be used to define units, but it's not compatible with cljs. Alternatively use the form this expands to: (def unit-fn-name (new-unit measure symbol scaling composition))
(defunit-once unit-fn-name measure symb scale-or-comp)
(defunit-once unit-fn-name measure symb scaling composition)
Can be used to define units, but it's not compatible with cljs. Alternatively use the form this expands to: (defonce unit-fn-name (new-unit measure symbol scaling composition))
Can be used to define units, but it's not compatible with cljs. Alternatively use the form this expands to: (defonce unit-fn-name (new-unit measure symbol scaling composition))
(equivalent-quantities quantity)
Returns quantities with compatible units equivalent to the given one.
Returns quantities with compatible units equivalent to the given one.
(measure q)
What this quantity is a measure of.
What this quantity is a measure of.
(new-unit measure symb scale-or-comp)
(new-unit measure symb scaling composition)
Register a new type of unit with the given measure, symbol, composition and/or scaling. Returns a fn (fn [number]) that creates a quantity of this unit.
Register a new type of unit with the given measure, symbol, composition and/or scaling. Returns a fn (fn [number]) that creates a quantity of this unit.
(nicest quantity)
(nicest quantity unit-options)
Returns the quantity converted to the "nicest" compatible unit for printing.
"nicest" being defined as the one with the shortest printed number, preferring precise doubles over ratios if available (as ratios can be harder to read).
The 1-arity implementation uses all compatible units as options. This is not recommended for most cases, as broch includes some "weird" units that are often unwanted.
Example: (b/nicest (b/meters 18520)) => #broch/quantity[10 "NM"] ; nautical miles may be unwanted (b/nicest (b/meters 18520) [b/meters b/kilometers]) => #broch/quantity[18.52 "km"]
Returns the quantity converted to the "nicest" compatible unit for printing. "nicest" being defined as the one with the shortest printed number, preferring precise doubles over ratios if available (as ratios can be harder to read). The 1-arity implementation uses all compatible units as options. This is not recommended for most cases, as broch includes some "weird" units that are often unwanted. Example: (b/nicest (b/meters 18520)) => #broch/quantity[10 "NM"] ; nautical miles may be unwanted (b/nicest (b/meters 18520) [b/meters b/kilometers]) => #broch/quantity[18.52 "km"]
(num q)
Get the number from a quantity. Pass through if already a number.
Get the number from a quantity. Pass through if already a number.
(quantity unit x)
Makes a new quantity of unit and x.
Makes a new quantity of unit and x. - unit must be a quantity (but the number part is ignored). - x must be number-ish, i.e. a number, string of number, or another quantity. If x is a quantity, it will be converted (or throw exception if incompatible).
(symbol q)
The unit symbol for this quantity.
The unit symbol for this quantity.
(with-num quantity n)
Make copy of a quantity with a different number.
Make copy of a quantity with a different number.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close