boolean ( GrIfStatement ifStatement, GrMethod method) { GrExpression condition = ifStatement.getCondition(); if (condition == null) return false; if (expressionDefinitelyRecurses(condition, method)) { return false; } final GrStatement thenBranch = ifStatement.getThenBranch(); if (statementMayReturnBeforeRecursing(thenBranch, method)) { return true; } final GrStatement elseBranch = ifStatement.getElseBranch(); return elseBranch != null && statementMayReturnBeforeRecursing(elseBranch, method); }