12345678910111213141516171819202122232425262728293031323334353637383940(** A cell in the table.
The contents of a cell may have multiple lines, and may be re-wrapped to display the
cell in a limited width.
*)open!Coreopen!ImportmoduletypeCell=sigtypet[@@derivingsexp_of]valcreate:Attr.tlist->string->tvalattr:t->Attr.tlist(** [to_tuple (create attr contents) = attr, lines] where the line breaks in [lines] are
those indicated by '\n' in [contents] *)valto_tuple:t->Attr.tlist*Utf8_text.tlist(** [is_empty t] returns true if every line is empty. Note that this means [is_empty
(create [] s) <> String.is_empty s] when [s] is all '\n'. *)valis_empty:t->bool(** [width t] returns the length of the longest line in [t] *)valwidth:t->int(** [wrap t ~width = lines] rewraps the lines of a cell to fit within [width]. [wrap]
only adds new line breaks. *)valwrap:t->width:int->prefer_split_on_spaces:bool->Utf8_text.tlist(** [height t ~display_empty_rows:false ~width = List.length (wrap t ~width)].
When [display_empty_rows = true], [height] always returns at least 1. *)valheight:t->display_empty_rows:bool->width:int->prefer_split_on_spaces:bool->intend