The recursion is sort of a \'divide and conquer\' style, it splits up while getting smaller (Tree data structure), and I want it to break completely if a violation is found,
I was able to move out of all recursive calls using a global variable.
boolean skipRecursivePaths = false; private callAgain(){ if(callAgain){ if(getOutCompletely){ skipRecursivePaths = true; } if(skipRecursivePaths){ return; } }