keen/misc

Source
This is a standard module and does not need to be explicitly imported.
void builtin
lambda-data[r, p] builtin
lambda-mut[r, p] builtin
lambda-shared[r, p] builtin
reference[t] record (has private fields)
Wraps a value in a mutable record.
global spec builtin
unsafe spec builtin
java spec builtin
js spec builtin
new void()
== bool(_ void, _ void)
<=> comparison(_ void, _ void)
new[t] spec
new t()
list-new[col, elem] spec
list-new col(elems elem[])
copy[t] spec
copy t(a t)
to[output, input] spec
to output(a input)
Spec for functions that convert input to output.
data[t] spec builtin

Specifies that a type must be immutable data.

This includes most types that are not mut.

To put it another way, a type works with data if it is: * A primitive like nat, an enum, or flags. * A record with no mut fields, whose fields are all data. * A union whose member types are all data. * Immutable collections like x[], where the type arguments are all data. * A constant pointer like nat*.

shared[t] spec builtin
Specifies that a type must be safe to share between tasks that may run in parallel. Anything that satisfies data satisfies shared.
subscript[r, p] r(a r data(p), params p)
Calls the function and returns its return value.
subscript[r, p] r(a r shared(p), params p)
subscript[r, p] r(a r mut(p), params p)
new[t] t reference(value t)
get[t] t(a t reference)
set=[t] void(a t reference, value t)
identity[t] t(a t)
Returns its argument. Useful for writing it.identity to create a lambda instead of of x then x.
noop[output, input] output(_ input) output new
Ignores the input and returns an empty value. Useful for writing it.noop to create a lambda instead of of _ then ().
java bool() global
True if this is a Java build. (This is the default.) In contexts where this is 'true' (such as inside 'if java'), you can call 'java' functions.
js bool() global
True if this is a JavaScript build. In contexts where this is 'true' (such as inside 'if js'), you can call 'js' functions.