Asynchronous cubbyholes used to wait for a future value by name.
What | Where |
---|---|
Discussion | #1 |
Documentation | https://bigeasy.github.io/cubbyhole |
Source | https://github.com/bigeasy/cubbyhole |
Issues | https://github.com/bigeasy/cubbyhole/issues |
CI | https://travis-ci.org/bigeasy/cubbyhole |
Coverage: | https://codecov.io/gh/bigeasy/cubbyhole |
License: | MIT |
Departure installs from NPM.
npm install cubbyhole
Extant is an implementation of SQL's COALESCE that I've used for some time to
deal with the fact that JavaScript truthiness will treat ''
and 0
as true so
the ||
operator can't always be used to create given or default one-liner.
const { compare, raise, equal } = require('cubbyhole')
We use the name "extant" on NPM because we want the first extant argument.
This README.md
is also a unit test using the
Proof unit test framework. We'll use the
Proof okay
function to assert out statements in the readme. A Proof unit test
generally looks like this.
require('proof')(4, async okay => {
okay('always okay')
okay(true, 'okay if true')
okay(1, 1, 'okay if equal')
okay({ value: 1 }, { value: 1 }, 'okay if deep strict equal')
})
You can run this unit test yourself to see the output from the various code sections of the readme.
git clone git@github.com:bigeasy/cubbyhole.git
cd cubbyhole
npm install --no-package-lock --no-save
node test/readme.t.js
The 'extant'
module exports a single coalesce
function.
const { compare, raise, equal } = require('depature')
Note that Extant is SQL's COALESCE
. It returns the first non-null-like value,
that is the first value that is not == null
, which would be null
or
undefined
. If there is no such argument it returns null
.
okay('test')