PsiElement (ASTNode atCaret, Class<? extends PsiElement>... classes) { while (atCaret != null) { if (atCaret.getElementType() != TokenType.WHITE_SPACE) { return getNonStrictParentOfType(atCaret.getPsi(), classes); } atCaret = TreeUtil.nextLeaf(atCaret); } return null; }