org.eclipse.jface.text.IDocumentExtension4#getModificationStamp ( )源码实例Demo

下面列出了org.eclipse.jface.text.IDocumentExtension4#getModificationStamp ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: Pydev   文件: DocCopy.java
public DocCopy(IDocument document) {
    this.contents = document.get();
    this.document = document;
    categoryToPos = new HashMap<>();
    String[] positionCategories = document.getPositionCategories();
    for (String string : positionCategories) {
        try {
            categoryToPos.put(string, document.getPositions(string));
        } catch (BadPositionCategoryException e) {
            Log.log(e);
        }
    }

    IDocumentExtension4 doc4 = (IDocumentExtension4) document;
    modificationStamp = doc4.getModificationStamp();
}
 
源代码2 项目: APICloud-Studio   文件: AbstractThemeableEditor.java
public ParseResult getParseResult()
{
	try
	{
		IDocument document = getDocument();
		if (document == null)
		{
			return null;
		}
		long modificationStamp = IDocumentExtension4.UNKNOWN_MODIFICATION_STAMP;
		if (document instanceof IDocumentExtension4)
		{
			synchronized (modificationStampLock)
			{
				IDocumentExtension4 iDocumentExtension = (IDocumentExtension4) document;
				modificationStamp = iDocumentExtension.getModificationStamp();
				if (modificationStamp != IDocumentExtension4.UNKNOWN_MODIFICATION_STAMP
						&& modificationStamp == lastModificationStamp)
				{
					return lastAstForModificationStamp;
				}
			}
		}
		// Don't synchronize the actual parse!
		ParseResult ast = doGetAST(document);

		synchronized (modificationStampLock)
		{
			lastAstForModificationStamp = ast;
			lastModificationStamp = modificationStamp;
			return lastAstForModificationStamp;
		}
	}
	catch (Throwable e)
	{
		IdeLog.logTrace(CommonEditorPlugin.getDefault(), e.getMessage(), e, IDebugScopes.AST);
	}
	return null;
}
 
源代码3 项目: Pydev   文件: ScopeSelectionAction.java
private static String getCurrentSelectionCacheKey(BaseEditor pyEdit) {
    IDocument doc = pyEdit.getDocument();

    int length = doc.getLength();
    String key = Integer.toString(length);
    if (doc instanceof IDocumentExtension4) {
        IDocumentExtension4 document = (IDocumentExtension4) doc;
        long modificationStamp = document.getModificationStamp();
        key += " - " + modificationStamp;
    }
    return key;
}
 
源代码4 项目: Pydev   文件: OrganizeImportsFixesUnused.java
public boolean beforePerformArrangeImports(PySelection ps, PyEdit edit, IFile f) {
    int oldSelection = ps.getRegion().getOffset();

    IDocumentExtension4 doc = (IDocumentExtension4) ps.getDoc();
    if (edit != null) {
        if (!ensureParsed(edit)) {
            return true;
        }
        //Check that the editor time is actually the same as the document time.
        long docTime = doc.getModificationStamp();

        if (docTime != edit.getAstModificationTimeStamp()) {
            return true;
        }
        ErrorDescription errorDescription = edit.getErrorDescription();
        if (errorDescription != null) {
            return true; //Don't remove unused imports if we have syntax errors.
        }
    }

    try {
        findAndDeleteUnusedImports(ps, edit, doc, f);
    } catch (Exception e) {
        Log.log(e);
    }
    ps.setSelection(oldSelection, oldSelection);
    return true;

}