boolean (final int offset, @NotNull final Editor editor, @NotNull final IElementType dot, @NotNull final IElementType identifier, boolean allowAfterDot) { HighlighterIterator iterator = editor.getHighlighter().createIterator(offset); if (iterator.atEnd()) return false; if (offset != iterator.getEnd() && iterator.getStart() > 0) iterator.retreat(); final IElementType tokenType = iterator.getTokenType(); if (allowAfterDot && tokenType == dot) return true; return isClassLikeIdentifier(offset, editor, iterator, identifier); }