Because of [encapsulation](http://en.wikipedia.org/wiki/Encapsulation_(object-oriented_programming), the rstream fields are hidden from consumers. I'm not sure we should use this OO pattern though, it's just something I'm used to do, a way to make it explicit we don't expect consumers to access the fields directly.