- defaultIf<T, S>(predicate: ((value: T) => value is S)): (<D>(defaultValue: ValueOrProvider<D, []>) => (<V>(value: V) => D | Exclude<V, S>))
-
Parameters
-
predicate: ((value: T) => value is S)
-
- (value: T): value is S
-
Returns value is S
Returns (<D>(defaultValue: ValueOrProvider<D, []>) => (<V>(value: V) => D | Exclude<V, S>))
-
- <D>(defaultValue: ValueOrProvider<D, []>): (<V>(value: V) => D | Exclude<V, S>)
-
Returns (<V>(value: V) => D | Exclude<V, S>)
-
- <V>(value: V): D | Exclude<V, S>
-
Returns D | Exclude<V, S>
If the provided value matches the Predicate, the default value will be returned
Example
Default to
1ifvalueis less than0Example
Call initializer function if
valueis less than0Returns
the defaultValue if the Predicate matches, else the provided value