public void release(){ drawInfo.drawGraphics.setBuffer(null); drawInfo.drawGraphics.finish(); if (drawInfo.syntax != null) { drawInfo.doc.releaseSyntax(drawInfo.syntax); } DocumentUtilities.SEGMENT_CACHE.releaseSegment(drawInfo.text); }
/** Parse the text and pass the resulting tokens to the token processor. * @param tp token processor that will be informed about the found tokens. * @param text text to parse */ public void tokenizeText(TokenProcessor tp, String text) { Syntax syntax = null; try { syntax = doc.getFreeSyntax(); char[] buf = text.toCharArray(); syntax.load(null, buf, 0, buf.length, true, -1); boolean cont = true; while (cont) { TokenID tokenID = syntax.nextToken(); TokenContextPath tcp = syntax.getTokenContextPath(); if (tokenID == null) { tp.eot(syntax.tokenOffset); cont = false; } else { if (!tp.token(tokenID, tcp, syntax.getTokenOffset(), syntax.getTokenLength())) { cont = false; } } } } finally { if (syntax != null) { doc.releaseSyntax(syntax); } } }
doc.releaseSyntax(syntax);
eolMark.updateStateInfo(syntax); } finally { doc.releaseSyntax(syntax); SyntaxSeg.releaseSlot(slot);
doc.releaseSyntax(syntax); SyntaxSeg.releaseSlot(slot);
doc.releaseSyntax(syntax); SyntaxSeg.releaseSlot(slot);
ctx.drawGraphics.finish(); ctx.doc.releaseSyntax(ctx.syntax); SyntaxSeg.releaseSlot(ctx.slot); ctx.doc.readUnlock();
ctx.doc.releaseSyntax(ctx.syntax);
doc.releaseSyntax(syntax);
e.printStackTrace(); } finally { doc.releaseSyntax(syntax); SyntaxSeg.releaseSlot(slot);
doc.releaseSyntax(syntax);
doc.releaseSyntax(syntax);