public void setCursorToGrammarElement(Project project, PreviewState previewState, int offset) {
Token tokenUnderCursor = ParsingUtils.getTokenUnderCursor(previewState, offset);
if ( tokenUnderCursor==null ) {
return;
}
PreviewParser parser = (PreviewParser) previewState.parsingResult.parser;
Integer atnState = parser.inputTokenToStateMap.get(tokenUnderCursor);
if ( atnState==null ) { // likely an error token
//LOG.error("no ATN state for input token " + tokenUnderCursor);
return;
}
Interval region = previewState.g.getStateToGrammarRegion(atnState);
CommonToken token =
(CommonToken) previewState.g.tokenStream.get(region.a);
jumpToGrammarPosition(project, token.getStartIndex());
}
InputPanel.java 文件源码
java
阅读 31
收藏 0
点赞 0
评论 0
项目:intellij-plugin-v4
作者:
评论列表
文章目录