public static TokenSequence getTokenSequence (Document document, int offset) { TokenHierarchy tokenHierarchy = TokenHierarchy.get (document); if (tokenHierarchy == null) return null; TokenSequence tokenSequence = tokenHierarchy.tokenSequence (); if (tokenSequence == null) return null; while (true) { tokenSequence.move (offset); if (!tokenSequence.moveNext ()) return tokenSequence; TokenSequence tokenSequence2 = tokenSequence.embedded (); if (tokenSequence2 == null) return tokenSequence; tokenSequence = tokenSequence2; } }
/*package local*/ Token<FortranTokenId> lookNext(){ if (ts.moveNext()) { Token<FortranTokenId> next = ts.token(); ts.movePrevious(); return next; } return null; }
TokenSequence<JavaTokenId> previousNonWhitespaceToken(TokenSequence<JavaTokenId> ts) { while (ts.movePrevious()) { switch (ts.token().id()) { case WHITESPACE: case LINE_COMMENT: case BLOCK_COMMENT: case JAVADOC_COMMENT: break; default: return ts; } } return null; }
private EditorTokenInput ( Set<Integer> filter, StyledDocument doc ) { tokenSequence = TokenHierarchy.get (doc).tokenSequence (); mimeType = tokenSequence.language ().mimeType (); try { language = LanguagesManager.get ().getLanguage (mimeType); } catch (LanguageDefinitionNotFoundException ex) { } this.filter = filter; this.doc = doc; }
private static String getMimeTypeAtOffset(Document doc, int offset) { TokenHierarchy th = TokenHierarchy.get(doc); List<TokenSequence<?>> tsl = th.embeddedTokenSequences(offset, false); if (tsl != null && tsl.size() > 0) { TokenSequence<?> tokenSequence = tsl.get(tsl.size() - 1); return tokenSequence.language().mimeType(); } return null; } }
public static boolean isStringToken(Token<? extends PHPTokenId> token) { for (PHPTokenId stringTokenId : STRING_TOKENS) { if (token.id() == stringTokenId) { return true; } } return false; }
/*package local*/ Token<FortranTokenId> lookPrevious(){ if (ts.movePrevious()) { Token<FortranTokenId> previous = ts.token(); ts.moveNext(); return previous; } return null; }
private static boolean moveTheSequence(TokenSequence<?> seq, boolean backward, int offsetLimit) { if (backward) { if (seq.movePrevious()) { int e = seq.offset() + seq.token().length(); return offsetLimit == -1 ? true : e > offsetLimit; } } else { if (seq.moveNext()) { int s = seq.offset(); return offsetLimit == -1 ? true : s < offsetLimit; } } return false; }