本文整理匯總了Java中com.intellij.psi.PsiDocumentManager.isCommitted方法的典型用法代碼示例。如果您正苦於以下問題:Java PsiDocumentManager.isCommitted方法的具體用法?Java PsiDocumentManager.isCommitted怎麽用?Java PsiDocumentManager.isCommitted使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類com.intellij.psi.PsiDocumentManager
的用法示例。
在下文中一共展示了PsiDocumentManager.isCommitted方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: getContext
import com.intellij.psi.PsiDocumentManager; //導入方法依賴的package包/類
@NotNull
public static PsiElement getContext(@NotNull PsiFile file, int offset, boolean searchInInjectedFragment) {
PsiElement element = null;
if (searchInInjectedFragment && !InjectedLanguageManager.getInstance(file.getProject()).isInjectedFragment(file)) {
PsiDocumentManager documentManager = PsiDocumentManager.getInstance(file.getProject());
Document document = documentManager.getDocument(file);
if (document != null && !documentManager.isCommitted(document)) {
LOGGER.error("Trying to access to injected template context on uncommited document, offset = " + offset,
AttachmentFactory.createAttachment(file.getVirtualFile()));
}
else {
element = InjectedLanguageUtil.findInjectedElementNoCommit(file, offset);
}
}
if (element == null) {
element = PsiUtilCore.getElementAtOffset(file, offset);
}
return element;
}
示例2: markOptionsInaccurateIfDocumentUncommitted
import com.intellij.psi.PsiDocumentManager; //導入方法依賴的package包/類
private static void markOptionsInaccurateIfDocumentUncommitted(@NotNull IndentOptions options, @NotNull PsiFile file) {
PsiDocumentManager manager = PsiDocumentManager.getInstance(file.getProject());
Document document = manager.getDocument(file);
if (document != null && !manager.isCommitted(document)) {
options.setRecalculateForCommittedDocument(true);
}
}
示例3: getPsiElementsAt
import com.intellij.psi.PsiDocumentManager; //導入方法依賴的package包/類
@NotNull
private static Collection<PsiElement> getPsiElementsAt(Point point, Editor editor) {
if (editor.isDisposed()) {
return Collections.emptySet();
}
Project project = editor.getProject();
if (project == null || project.isDisposed()) {
return Collections.emptySet();
}
final PsiDocumentManager documentManager = PsiDocumentManager.getInstance(project);
final Document document = editor.getDocument();
PsiFile psiFile = documentManager.getPsiFile(document);
if (psiFile == null || psiFile instanceof PsiCompiledElement || !psiFile.isValid()) {
return Collections.emptySet();
}
final Set<PsiElement> elements = Collections.newSetFromMap(new WeakHashMap<PsiElement, Boolean>());
final int offset = editor.logicalPositionToOffset(editor.xyToLogicalPosition(point));
if (documentManager.isCommitted(document)) {
ContainerUtil.addIfNotNull(elements, InjectedLanguageUtil.findElementAtNoCommit(psiFile, offset));
}
for (PsiFile file : psiFile.getViewProvider().getAllFiles()) {
ContainerUtil.addIfNotNull(elements, file.findElementAt(offset));
}
return elements;
}
示例4: isDocumentCommitted
import com.intellij.psi.PsiDocumentManager; //導入方法依賴的package包/類
private static boolean isDocumentCommitted(@NotNull PsiFile file) {
PsiDocumentManager manager = PsiDocumentManager.getInstance(file.getProject());
Document document = manager.getDocument(file);
return document != null && manager.isCommitted(document);
}