> On Jun 11, 2019, at 6:13 PM, Walt Karas <wka...@verizonmedia.com.INVALID> 
> wrote:
> 
> I'm wondering if we should add this template to our core utilities:
> https://godbolt.org/z/4X-5wR .  We could use it to conduct a gradual
> campaign of "creeping encapsulation", to pull up the pants of our many
> classes with (often lots of) public data members.  If a class X had the
> data member 'int xyz;', for example, you'd change it to 'ts:ROData<int, X>
> xyz;' and compile. Read accesses of xyz would (I think) generally compile
> fine, you'd only have to change the write accesses.


IMO, if we’re going go through these classes and fix them (which we should), 
why not fix them properly with public/private/protected and getters/setters? I 
agree that we are too frivolous with “public” members, but not convinced we 
need to have public “RO” members (the common pattern being private and 
getter’s, no?). As a bonus, debugging getters/setter’s is really useful.

Ciao,

— Leif

Reply via email to