@Setter[T, V]
What setter makes from a function of the object assigned and
its new value.
A class member holding one is a computed field: obj.name = value calls the
function with obj and value. A decorator that wraps a setter's function
returns this type by calling setter itself.