/**
* Inserts an element at the beginning of a `List`, returning a new `List`
*
* @tsplus static List.Aspects prepend
* @tsplus pipeable List prepend
*/
export function prepend(elem: B) {
return (self: List): List.NonEmpty => List.cons(elem, self)
}
/**
* Inserts an element at the beginning of a `List`, returning a new `List`
*
* @tsplus operator List +
*/
export function prependOperatorStrict(elem: A, list: List): List.NonEmpty {
return List.cons(elem, list)
}
/**
* Inserts an element at the beginning of a `List`, returning a new `List`
*
* @tsplus operator List >
*/
export function prependOperator(elem: A, list: List): List {
return List.cons(elem, list)
}