类com.intellij.psi.PsiQualifiedNamedElement源码实例Demo

下面列出了怎么用com.intellij.psi.PsiQualifiedNamedElement的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: consulo   文件: InspectionResultsViewComparator.java
private static int compareEntity(final RefEntity entity, final PsiElement element) {
  if (entity instanceof RefElement) {
    final PsiElement psiElement = ((RefElement)entity).getElement();
    if (psiElement != null && element != null) {
      return PsiUtilCore.compareElementsByPosition(psiElement, element);
    }
    if (element == null) return psiElement == null ? 0 : 1;
  }
  if (element instanceof PsiQualifiedNamedElement) {
    return StringUtil.compare(entity.getQualifiedName(), ((PsiQualifiedNamedElement)element).getQualifiedName(), true);
  }
  if (element instanceof PsiNamedElement) {
    return StringUtil.compare(entity.getName(), ((PsiNamedElement)element).getName(), true);
  }
  return -1;
}
 
@Override
public RefactoringElementListener getListener(PsiElement element) {
  final PsiFile containingFile = element.getContainingFile();
  if (!(element instanceof PsiQualifiedNamedElement)) return null;
  final String oldName = ((PsiQualifiedNamedElement)element).getQualifiedName();
  RefactoringElementListenerComposite composite = null;
  for (final NamedScopesHolder holder : NamedScopeManager.getAllNamedScopeHolders(element.getProject())) {
    final NamedScope[] scopes = holder.getEditableScopes();
    for (int i = 0; i < scopes.length; i++) {
      final NamedScope scope = scopes[i];
      final PackageSet packageSet = scope.getValue();
      if (packageSet != null && (containingFile == null || packageSet.contains(containingFile, holder))) {
        composite = traverse(new OldScopeDescriptor(oldName, scope, i, holder), composite, packageSet);
      }
    }
  }
  return composite;
}
 
源代码3 项目: intellij   文件: RunConfigurationContext.java
/** Convert a {@link #getSourceElement()} into an uniquely identifiable string. */
default String getSourceElementString() {
  if (!ApplicationManager.getApplication().isReadAccessAllowed()) {
    return ReadAction.compute(this::getSourceElementString);
  }
  PsiElement element = getSourceElement();
  if (element instanceof PsiFile) {
    return Optional.of((PsiFile) element)
        .map(PsiFile::getVirtualFile)
        .map(VirtualFile::getPath)
        .orElse(element.toString());
  }
  String path =
      Optional.of(element)
              .map(PsiElement::getContainingFile)
              .map(PsiFile::getVirtualFile)
              .map(VirtualFile::getPath)
              .orElse("")
          + '#';
  if (element instanceof PsiQualifiedNamedElement) {
    return path + ((PsiQualifiedNamedElement) element).getQualifiedName();
  } else if (element instanceof PsiNamedElement) {
    return path + ((PsiNamedElement) element).getName();
  } else {
    return path + element.toString();
  }
}
 
源代码4 项目: consulo   文件: QuickDocUtil.java
@Contract("_, _, _, null -> null")
public static String inferLinkFromFullDocumentation(@Nonnull DocumentationProvider provider, PsiElement element, PsiElement originalElement, @Nullable String navigationInfo) {
  if (navigationInfo != null) {
    String fqn = element instanceof PsiQualifiedNamedElement ? ((PsiQualifiedNamedElement)element).getQualifiedName() : null;
    String fullText = provider.generateDoc(element, originalElement);
    return HintUtil.prepareHintText(DocPreviewUtil.buildPreview(navigationInfo, fqn, fullText), HintUtil.getInformationHint());
  }
  return null;
}
 
 类所在包
 类方法
 同包方法