Kot.Buffer3val empty : 'a bufferval length : 'a buffer -> intval is_empty : 'a buffer -> boolval first : 'a buffer -> 'afirst b returns the first element of the buffer b, which must be nonempty. It is equivalent to fst (pop b).
val last : 'a buffer -> 'alast b returns the last element of the buffer b, which must be nonempty. It is equivalent to snd (eject b).
val fold_left : ('b -> 'a -> 'b) -> 'b -> 'a buffer -> 'bval fold_right : ('a -> 'b -> 'b) -> 'a buffer -> 'b -> 'b