当前位置: 首页>>代码示例>>Java>>正文


Java SmartPsiElementPointer.getElement方法代码示例

本文整理汇总了Java中com.intellij.psi.SmartPsiElementPointer.getElement方法的典型用法代码示例。如果您正苦于以下问题:Java SmartPsiElementPointer.getElement方法的具体用法?Java SmartPsiElementPointer.getElement怎么用?Java SmartPsiElementPointer.getElement使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.intellij.psi.SmartPsiElementPointer的用法示例。


在下文中一共展示了SmartPsiElementPointer.getElement方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getDeclaration

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Override
@Nullable
public PsiElement getDeclaration(final Project project) {
  DomElement domDeclaration = getDomDeclaration();
  if (domDeclaration != null) {
    final DomTarget target = DomTarget.getTarget(domDeclaration);
    if (target != null) {
      return PomService.convertToPsi(target);
    }
    return domDeclaration.getXmlElement();
  }
  final DomAnchor anchor = getUserData(DomExtensionImpl.KEY_DOM_DECLARATION);
  if (anchor != null) {
    return anchor.getContainingFile();
  }
  final SmartPsiElementPointer<?> pointer = getUserData(DomExtensionImpl.DECLARING_ELEMENT_KEY);
  if (pointer != null) {
    final PsiElement element = pointer.getElement();
    if (element != null) {
      return element;
    }
  }

  return PomService.convertToPsi(project, this);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:26,代码来源:AbstractDomChildDescriptionImpl.java

示例2: getDeclaration

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Nullable
public PsiElement getDeclaration(final Project project) {
  DomElement domDeclaration = getDomDeclaration();
  if (domDeclaration != null) {
    final DomTarget target = DomTarget.getTarget(domDeclaration);
    if (target != null) {
      return PomService.convertToPsi(target);
    }
    return domDeclaration.getXmlElement();
  }
  final DomAnchor anchor = getUserData(DomExtensionImpl.KEY_DOM_DECLARATION);
  if (anchor != null) {
    return anchor.getContainingFile();
  }
  final SmartPsiElementPointer<?> pointer = getUserData(DomExtensionImpl.DECLARING_ELEMENT_KEY);
  if (pointer != null) {
    final PsiElement element = pointer.getElement();
    if (element != null) {
      return element;
    }
  }

  return PomService.convertToPsi(project, this);
}
 
开发者ID:lshain-android-source,项目名称:tools-idea,代码行数:25,代码来源:AbstractDomChildDescriptionImpl.java

示例3: getNavigatables

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Nullable
@Override
protected Navigatable[] getNavigatables(DataContext dataContext) {
  SmartPsiElementPointer element = myElement;
  if (element != null) {
    PsiElement psiElement = element.getElement();
    return psiElement instanceof Navigatable ? new Navigatable[] {(Navigatable)psiElement} : null;
  }
  return null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:11,代码来源:DocumentationComponent.java

示例4: getPsiElement

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Nullable
public PsiElement getPsiElement(@NotNull FoldRegion region) {
  final SmartPsiElementPointer<?> pointer = myFoldRegionToSmartPointerMap.get(region);
  if (pointer == null) {
    return null;
  }
  PsiElement element = pointer.getElement();
  return element != null && element.isValid() ? element : null;
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:10,代码来源:EditorFoldingInfo.java

示例5: getNavigatables

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Nullable
@Override
protected Navigatable[] getNavigatables(DataContext dataContext) {
  SmartPsiElementPointer element = myElement;
  if (element != null) {
    PsiElement psiElement = element.getElement();
    return psiElement instanceof Navigatable ? new Navigatable[]{(Navigatable)psiElement} : null;
  }
  return null;
}
 
开发者ID:consulo,项目名称:consulo,代码行数:11,代码来源:DocumentationComponent.java

示例6: getPsiElement

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Nullable
public PsiElement getPsiElement(@Nonnull FoldRegion region) {
  final SmartPsiElementPointer<?> pointer = myFoldRegionToSmartPointerMap.get(region);
  if (pointer == null) {
    return null;
  }
  PsiElement element = pointer.getElement();
  return element != null && element.isValid() ? element : null;
}
 
开发者ID:consulo,项目名称:consulo,代码行数:10,代码来源:EditorFoldingInfo.java

示例7: getChosenMethod

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Nullable
@RequiredReadAction
public static PsiMethod getChosenMethod(PsiCall call)
{
	TextRange range = getAnchorRange(call);
	if(range == null)
	{
		return null;
	}
	Document document = call.getContainingFile().getViewProvider().getDocument();
	if(document == null)
	{
		return null;
	}

	LinkedList<RangeMarker> completedMethods = document.getUserData(LAST_CHOSEN_METHODS);
	if(completedMethods == null)
	{
		return null;
	}

	RangeMarker rangeMarker = ContainerUtil.find(completedMethods, m -> haveSameRange(m, range));
	if(rangeMarker == null)
	{
		return null;
	}
	SmartPsiElementPointer<PsiMethod> pointer = rangeMarker.getUserData(CHOSEN_METHODS);
	return pointer == null ? null : pointer.getElement();
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:30,代码来源:CompletionMemory.java

示例8: afterExpand

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Override
public void afterExpand(@NotNull final PsiFile file, @NotNull final Editor editor)
{
	final SmartPsiElementPointer<PsiElement> pointer = file.getUserData(ADDED_SEMICOLON);
	if(pointer != null)
	{
		final PsiElement addedSemicolon = pointer.getElement();
		file.putUserData(ADDED_SEMICOLON, null);
		if(addedSemicolon != null && addedSemicolon.isValid())
		{
			CommandProcessor.getInstance().runUndoTransparentAction(new Runnable()
			{
				@Override
				public void run()
				{
					ApplicationManager.getApplication().runWriteAction(new Runnable()
					{
						public void run()
						{
							addedSemicolon.delete();
						}
					});
				}
			});
		}
	}
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:28,代码来源:JavaPostfixTemplateProvider.java

示例9: performPsiSpoilingRefactoring

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Override
protected void performPsiSpoilingRefactoring()
{
	JavaCodeStyleManager styleManager = JavaCodeStyleManager.getInstance(myProject);
	for(SmartPsiElementPointer<PsiElement> pointer : myRefsToShorten)
	{
		PsiElement element = pointer.getElement();
		if(element != null)
		{
			styleManager.shortenClassReferences(element);
		}
	}
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:14,代码来源:MigrationProcessor.java

示例10: fun

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Override
public PsiElement fun(final SmartPsiElementPointer<PsiElement> pointer) {
  return pointer.getElement();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:5,代码来源:UsageInfoToUsageConverter.java

示例11: getFileContext

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Nullable
public static PsiElement getFileContext(@NotNull PsiFile file) {
  SmartPsiElementPointer pointer = file.getUserData(INJECTED_IN_ELEMENT);
  return pointer == null ? null : pointer.getElement();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:6,代码来源:FileContextUtil.java

示例12: getFileContext

import com.intellij.psi.SmartPsiElementPointer; //导入方法依赖的package包/类
@Nullable
public static PsiElement getFileContext(@Nonnull PsiFile file) {
  SmartPsiElementPointer pointer = file.getUserData(INJECTED_IN_ELEMENT);
  return pointer == null ? null : pointer.getElement();
}
 
开发者ID:consulo,项目名称:consulo,代码行数:6,代码来源:FileContextUtil.java


注:本文中的com.intellij.psi.SmartPsiElementPointer.getElement方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。