1signature tailbuffer =
2sig
3
4  type t
5  val new : {numlines : int, patterns : string list} -> t
6  val append : string -> t -> t
7  val output : t -> {fulllines : string list, lastpartial : string,
8                     patterns_seen: string list}
9  val last_line : t -> string option
10
11end
12