Function mapOrElse

  • Map over a Maybe instance and get out the value if maybe is a Just, or use a function to construct a default value if maybe is Nothing.

    const length = (s: string) => s.length;
    const getDefault = () => 0;

    const justAString = Maybe.just('string');
    const theStringLength = mapOrElse(getDefault, length, justAString);
    console.log(theStringLength); // 6

    const notAString = Maybe.nothing<string>();
    const notAStringLength = mapOrElse(getDefault, length, notAString)
    console.log(notAStringLength); // 0

    Type Parameters

    • T

      The type of the wrapped value.

    • U

      The type of the wrapped value of the returned Maybe.

    Parameters

    • orElseFn: () => U

      The function to apply if maybe is Nothing.

    • mapFn: (t: T) => U

      The function to apply to the wrapped value if maybe is Just

    • maybe: Maybe<T>

      The Maybe instance to map over.

    Returns U

  • Map over a Maybe instance and get out the value if maybe is a Just, or use a function to construct a default value if maybe is Nothing.

    const length = (s: string) => s.length;
    const getDefault = () => 0;

    const justAString = Maybe.just('string');
    const theStringLength = mapOrElse(getDefault, length, justAString);
    console.log(theStringLength); // 6

    const notAString = Maybe.nothing<string>();
    const notAStringLength = mapOrElse(getDefault, length, notAString)
    console.log(notAStringLength); // 0

    Type Parameters

    • T

      The type of the wrapped value.

    • U

      The type of the wrapped value of the returned Maybe.

    Parameters

    • orElseFn: () => U

      The function to apply if maybe is Nothing.

    • mapFn: (t: T) => U

      The function to apply to the wrapped value if maybe is Just

    Returns (maybe: Maybe<T>) => U

  • Map over a Maybe instance and get out the value if maybe is a Just, or use a function to construct a default value if maybe is Nothing.

    const length = (s: string) => s.length;
    const getDefault = () => 0;

    const justAString = Maybe.just('string');
    const theStringLength = mapOrElse(getDefault, length, justAString);
    console.log(theStringLength); // 6

    const notAString = Maybe.nothing<string>();
    const notAStringLength = mapOrElse(getDefault, length, notAString)
    console.log(notAStringLength); // 0

    Type Parameters

    • T

      The type of the wrapped value.

    • U

      The type of the wrapped value of the returned Maybe.

    Parameters

    • orElseFn: () => U

      The function to apply if maybe is Nothing.

    Returns (mapFn: (t: T) => U) => (maybe: Maybe<T>) => U