1
Fork 0

typescript(option): refactor: islotated T | null in a Nullable internal type and updated the docs

Signed-off-by: prescientmoon <git@moonythm.dev>
This commit is contained in:
Matei Adriel 2019-12-20 14:54:40 +02:00 committed by prescientmoon
parent 6bd58b46ff
commit 689c746682
Signed by: prescientmoon
SSH key fingerprint: SHA256:UUF9JT2s8Xfyv76b8ZuVL7XrmimH4o49p4b+iexbVH4
3 changed files with 11 additions and 3 deletions

View file

@ -194,7 +194,7 @@ A function to create options from nullable values.
### Signature
```ts
const fromNullable: <T>(value: T | null) => Option<T>
const fromNullable: <T>(value: Nullable<T>) => Option<T>
```
### Usage

View file

@ -1,5 +1,12 @@
import { Option, Some, None } from './types'
import { Binder, Folder, Mapper, Predicate, BackFolder } from './internalTypes'
import {
Binder,
Folder,
Mapper,
Predicate,
BackFolder,
Nullable
} from './internalTypes'
import { always, identity } from './internalHelperts'
import Internals, { SomeClass, isOption } from './internals'
@ -106,6 +113,6 @@ export const flat = <T, U>(option: Option<T>): Option<U> => {
)
}
export const fromNullable = <T>(value: null | T): Option<T> => {
export const fromNullable = <T>(value: Nullable<T>): Option<T> => {
return value === null ? None : Some(value)
}

View file

@ -5,3 +5,4 @@ export type Binder<T, U> = Mapper<T, Option<U>>
export type Predicate<T> = Mapper<T, boolean>
export type Folder<T, U> = (s: U, v: T) => U
export type BackFolder<T, U> = (v: T, s: U) => U
export type Nullable<T> = T | null