Description
katamari
is a collection of various data structures and reusable higher-order functions. It does not bundle any commands. It is only a collection of modules.
Installation
katamari
is available as an npm
package. You can install it via the npm package @ephox/katamari
Install from npm
npm install @ephox/katamari
.
Usage
Note, refrain from using any modules that are not in the
api
package.
Below is a list of commonly used parts of katamari
Data Structures
Optional Data Types
-
Optional
: A representation of None or Some(x) -
Result
: A representation of Error(str) or Value(v)
Asynchronous Data Types
-
Future
: An abstraction over an asynchronous value -
FutureResult
: A composition of aResult
and aFuture
-
LazyValue
: An asynchronous value that is only calculated once
Mutable Data Types
-
Cell
: A mutable piece of data -
Singleton
: A mutable piece of optional data
Algebraic Data Types
-
Adt
: An approximate representation of an Algebraic Data Type in JavaScript. It is based on the Church Encoding method.
Higher-order Functions
-
Arr
: collection of functions that operate on arrays -
Obj
: collection of functions that operate on JavaScript objects -
Merger
: collection of functions to merge JavaScript objects
Tests
katamari
uses bedrock
to run atomic tests. The tests are chiefly written using fast-check
Running Tests
$ yarn test