Since you are targeting performance, wasn't the reason this is done through overloading exactly because of that?
I remember Lukas telling me that once if I wanted to have better perf. Although in this case rootContext is probably rarely called, so the gain would be minimal.