Is true that in the current implementation with ```if```, ```@current``` doesn't need to be an instance variable. Still, I think that the refactoring beats the fact of having ```@current``` publicly accessible.

The other alternative is to double dispatch, see [this commit right here](https://github.com/tonchis/toml-rb/commit/6780fabb6004788213b19105aa4a7bc7b5d85582). But now you really need to have ```@current```, even though you don't have the ```attr_accessor```.

Personally, I prefer the one I pull-requested. Double-dispatching like that feels like having an implicit ```if``` anyway.