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


Java MemberOrderService类代码示例

本文整理汇总了Java中com.intellij.psi.codeStyle.arrangement.MemberOrderService的典型用法代码示例。如果您正苦于以下问题:Java MemberOrderService类的具体用法?Java MemberOrderService怎么用?Java MemberOrderService使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


MemberOrderService类属于com.intellij.psi.codeStyle.arrangement包,在下文中一共展示了MemberOrderService类的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getDefaultMemberAnchor

import com.intellij.psi.codeStyle.arrangement.MemberOrderService; //导入依赖的package包/类
@Nullable
@Override
public PsiElement getDefaultMemberAnchor(@NotNull PsiClass aClass, @NotNull PsiMember member) {
  CodeStyleSettings settings = CodeStyleSettingsManager.getSettings(aClass.getProject());
  MemberOrderService service = ServiceManager.getService(MemberOrderService.class);
  PsiElement anchor = service.getAnchor(member, settings.getCommonSettings(JavaLanguage.INSTANCE), aClass);

  PsiElement newAnchor = skipWhitespaces(aClass, anchor);
  if (newAnchor != null) {
    return newAnchor;
  }

  if (anchor != null && anchor != aClass) {
    anchor = anchor.getNextSibling();
    while (anchor instanceof PsiJavaToken && (anchor.getText().equals(",") || anchor.getText().equals(";"))) {
      final boolean afterComma = anchor.getText().equals(",");
      anchor = anchor.getNextSibling();
      if (afterComma) {
        newAnchor = skipWhitespaces(aClass, anchor);
        if (newAnchor != null) return newAnchor;
      }
    }
    if (anchor != null) {
      return anchor;
    }
  }

  // The main idea is to avoid to anchor to 'white space' element because that causes reformatting algorithm
  // to perform incorrectly. The algorithm is encapsulated at the PostprocessReformattingAspect.doPostponedFormattingInner().
  final PsiElement lBrace = aClass.getLBrace();
  if (lBrace != null) {
    PsiElement result = lBrace.getNextSibling();
    while (result instanceof PsiWhiteSpace) {
      result = result.getNextSibling();
    }
    return result;
  }
  
  return aClass.getRBrace();
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:41,代码来源:JavaPsiImplementationHelperImpl.java

示例2: getDefaultMemberAnchor

import com.intellij.psi.codeStyle.arrangement.MemberOrderService; //导入依赖的package包/类
@Nullable
@Override
public PsiElement getDefaultMemberAnchor(@NotNull PsiClass aClass, @NotNull PsiMember member)
{
	CodeStyleSettings settings = CodeStyleSettingsManager.getSettings(aClass.getProject());
	MemberOrderService service = ServiceManager.getService(MemberOrderService.class);
	PsiElement anchor = service.getAnchor(member, settings.getCommonSettings(JavaLanguage.INSTANCE), aClass);

	PsiElement newAnchor = skipWhitespaces(aClass, anchor);
	if(newAnchor != null)
	{
		return newAnchor;
	}

	if(anchor != null && anchor != aClass)
	{
		anchor = anchor.getNextSibling();
		while(anchor instanceof PsiJavaToken && (anchor.getText().equals(",") || anchor.getText().equals(";")))
		{
			final boolean afterComma = anchor.getText().equals(",");
			anchor = anchor.getNextSibling();
			if(afterComma)
			{
				newAnchor = skipWhitespaces(aClass, anchor);
				if(newAnchor != null)
				{
					return newAnchor;
				}
			}
		}
		if(anchor != null)
		{
			return anchor;
		}
	}

	// The main idea is to avoid to anchor to 'white space' element because that causes reformatting algorithm
	// to perform incorrectly. The algorithm is encapsulated at the PostprocessReformattingAspect.doPostponedFormattingInner().
	final PsiElement lBrace = aClass.getLBrace();
	if(lBrace != null)
	{
		PsiElement result = lBrace.getNextSibling();
		while(result instanceof PsiWhiteSpace)
		{
			result = result.getNextSibling();
		}
		return result;
	}

	return aClass.getRBrace();
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:52,代码来源:JavaPsiImplementationHelperImpl.java


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