I've always really liked the design pattern used by the C++ iostreams, whereby you take an object and call methods (or operators) on it which do what they need to do and then return a reference to the ...
Results that may be inaccessible to you are currently showing.
Hide inaccessible results