I think a default implementation that delegates to 'writeTo' could avoid most overrides of this method.