Package-level declarations
Types
NonEmptyList
is a data type used in Λrrow to model ordered lists that guarantee to have at least one value.
If you have worked with Java at all in the past, it is very likely that you have come across a NullPointerException
at some time (other languages will throw similarly named errors in such a case). Usually this happens because some method returns null
when you weren't expecting it and, thus, isn't dealing with that possibility in your client code. A value of null
is often abused to represent an absent optional value. Kotlin tries to solve the problem by getting rid of null
values altogether, and providing its own special syntax Null-safety machinery based on ?
.
Functions
Combines two structures by taking the union of their shapes and using Ior to hold the elements.
Combines two structures by taking the union of their shapes and combining the elements with the given function.
Apply a function to a Valid value, returning a new Validation that may be valid or invalid
Returns the first element as Some(element), or None if the iterable is empty.
Returns the first element as Some(element) matching the given predicate, or None if element was not found.
Returns the option's value if the option is nonempty, otherwise return the result of evaluating default
.
Return the Valid value, or the default if Invalid
Logical conditional. The equivalent of Prolog's soft-cut. If its first argument succeeds at all, then the results will be fed into the success branch. Otherwise, the failure branch is taken.
Returns the last element as Some(element), or None if the iterable is empty.
Returns the last element as Some(element) matching the given predicate, or None if no such element was found.
Returns a List> containing the zipped values of the two lists with null for padding on the left.
Returns a Sequence> containing the zipped values of the two sequences with null for padding on the left.
Returns a List containing the result of applying some transformation (A?, B) -> C
on a zip, excluding all cases where the right value is null.
Returns a Sequence containing the result of applying some transformation (A?, B) -> C
on a zip, excluding all cases where the right value is null.
Memoizes the given pure function so that invocations with the same arguments will only execute the function once.
Extractor of non-fatal Throwable. Will not match fatal errors like VirtualMachineError
(for example, OutOfMemoryError
and StackOverflowError
, subclasses of VirtualMachineError
), ThreadDeath
, LinkageError
, InterruptedException
. This will also not match CancellationException since that's a fatal exception in Kotlin for cancellation purposes.
Returns the Throwable if NonFatal and throws it otherwise.
Returns this option's if the option is nonempty, otherwise returns another option provided lazily by default
.
Return this if it is Valid, or else fall back to the given default. The functionality is similar to that of findValid except for failure accumulation, where here only the error on the right is preserved and the error on the left is ignored.
Returns a List> containing the zipped values of the two lists with null for padding.
Align two structures as in zip, but filling in blanks with null.
Returns a Sequence> containing the zipped values of the two sequences with null for padding.
Returns a List containing the result of applying some transformation (A?, B?) -> C
on a zip.
Returns a Sequence containing the result of applying some transformation (A?, B?) -> C
on a zip.