diff --git a/src/algebra/option.js b/src/algebra/option.js index 07b84db..306bf6c 100644 --- a/src/algebra/option.js +++ b/src/algebra/option.js @@ -81,13 +81,12 @@ function isSome() { * @returns {this is None} */ function isNone() { - return this === none + return this === None } /** * @template T * @param {?T} value - * @variation 2 * @returns {Some} */ export const Some = value => ({ @@ -101,21 +100,13 @@ export const Some = value => ({ fold }) -/** - * @returns {None} - */ -export const None = () => none - -/** @type {None} */ -export const none = ({ - isSome, - isNone, - chain: constant, - map: constant, - alt, - fold -}) - +export const None = () => None +None.isSome = isSome +None.isNone = isNone +None.chain = constant +None.map = constant +None.alt = alt +None.fold = fold /** * @template T diff --git a/src/index.js b/src/index.js index 1b504cb..b1f26e0 100644 --- a/src/index.js +++ b/src/index.js @@ -1,5 +1,2 @@ -import { Result } from './algebra/result.js' - -const a = Result.of(2).chain(x => Result.zero()) -console.log(a) +export * from './algebra/index.js'