@Ocramius @ojhaujjwal I disagree with you and try to explain:
When I wrote the first test for this PHPUnit cast fatal error as there were tried access method in null object. 
Extending: if renderer is 'JsonRenderer' It will cast an fatal error too. If it uses Resolver standalone it will cast fatal error. To avoid this I added this check.
Why do you so insist on removing this check?

For `if ($position > 0) {`: why should It run calling a huge function instead of simple return? It made for performance and code accuracy.