Slots
Every child fills one of the host's named regions, and each region holds at most one child - a JScrollPane, whose viewport, row header, column header and corners each show a single component.
Two declarations naming the same regions in the same order are equal, so a host that states its placement afresh on every recomposition states the same one.
Constructors
Properties
the calls that fill this host's regions, each written exactly as a caller of the container writes it - "SwingModifier.viewport()", "SwingModifier.corner(position)". They are the text an error about this host's regions prints, and a caller acts on that text by typing it, so a name that is not the call itself sends them to something they cannot write. What a child declares is resolved against the host's own setters rather than against this list.