void (@Nullable PsiElement condition, @Nullable PsiElement thenBranch, @Nullable PsiElement elseBranch) { if (condition != null && checkTextRange(condition, true)) { condition.accept(this); } ThreeState conditionRes = evaluateCondition(condition); if (conditionRes != ThreeState.NO && thenBranch != null && checkTextRange(thenBranch, true)) { thenBranch.accept(this); } if (conditionRes != ThreeState.YES && elseBranch != null && checkTextRange(elseBranch, true)) { elseBranch.accept(this); } }