InitMode (@NotNull PsiStatement statement, @NotNull InitMode origMode) { if (statement.getParent() instanceof PsiCodeBlock codeBlock && codeBlock.getParent() instanceof PsiBlockStatement block) { statement = block; } if (statement.getParent() instanceof PsiIfStatement ifStatement) { if (ifStatement.getThenBranch() == statement) { return new Branched(ifStatement, origMode, ExactMode.NOT_INITIALIZED); } else { return new Branched(ifStatement, ExactMode.NOT_INITIALIZED, origMode); } } return ExactMode.BOTTOM; }