Row
Row(
name: Text ,
kind: Text ,
fields: tuple[tuple[str, Text, bool], …] = (),
)-> None
One record, as the cells a table draws it in.
The name is what the row is called; the fields are what it states, each one already rendered. A field a record has nothing to say for is absent rather than blank, so two rows need not state the same ones.
Every field has a label, which is the column it belongs in, and says whether it wants that label printed as well. A value which already says what it is – a span, in brackets – does not, since a line has no heading to say it and a column does.