


The standard library Catlist api defines access to lists supporting constant-time concatenation.
The Catlist api is implemented by the catlist package.
The Catlist api source code is in src/lib/std/src/catlist.api.
The above information is manually maintained and may contain errors.
api {
Catlist X;
empty : Catlist(X );
null : Catlist(X ) -> Bool;
length : Catlist(X ) -> Int;
cons : (X , Catlist(X )) -> Catlist(X );
single : X -> Catlist(X );
append : (Catlist(X ) , Catlist(X )) -> Catlist(X );
head : Catlist(X ) -> X;
tail : Catlist(X ) -> Catlist(X );
from_list : List(X ) -> Catlist(X );
to_list : Catlist(X ) -> List(X );
map : (X -> Y) -> Catlist(X ) -> Catlist(Y );
apply : (X -> Void) -> Catlist(X ) -> Void;
};


