- when<Value, Predicated>(predicate: Predicate<Value, Predicated>): (<TrueOutput>(truthyHandler: Unary<Predicated & Value, TrueOutput>) => (<FalseInput, FalseOutput>(falsyHandler: Unary<FalseInput, FalseOutput>) => ((value: Value) => TrueOutput | FalseOutput)))
-
Parameters
-
predicate: Predicate<Value, Predicated>
Returns (<TrueOutput>(truthyHandler: Unary<Predicated & Value, TrueOutput>) => (<FalseInput, FalseOutput>(falsyHandler: Unary<FalseInput, FalseOutput>) => ((value: Value) => TrueOutput | FalseOutput)))
-
- <TrueOutput>(truthyHandler: Unary<Predicated & Value, TrueOutput>): (<FalseInput, FalseOutput>(falsyHandler: Unary<FalseInput, FalseOutput>) => ((value: Value) => TrueOutput | FalseOutput))
-
Parameters
-
truthyHandler: Unary<Predicated & Value, TrueOutput>
Returns (<FalseInput, FalseOutput>(falsyHandler: Unary<FalseInput, FalseOutput>) => ((value: Value) => TrueOutput | FalseOutput))
-
- <FalseInput, FalseOutput>(falsyHandler: Unary<FalseInput, FalseOutput>): ((value: Value) => TrueOutput | FalseOutput)
-
Type Parameters
-
FalseInput = Value extends Predicated ? Value : Predicated
-
FalseOutput = TrueOutput
Parameters
-
falsyHandler: Unary<FalseInput, FalseOutput>
Returns ((value: Value) => TrueOutput | FalseOutput)
-
- (value: Value): TrueOutput | FalseOutput
-
Returns TrueOutput | FalseOutput
Curried conditional (like a functional ternary).
Example
Returns
Curried function with
predicate
in context.