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


Java PsiArrayType.getComponentType方法代码示例

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


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

示例1: isValidArrayOrPrimitiveType

import com.intellij.psi.PsiArrayType; //导入方法依赖的package包/类
/**
 * Returns false if <code>type</code> is a multiple levels of collections or arrays. Returns true
 * otherwise.
 *
 * @param type The PsiType been validated.
 * @param project The project that has the PsiElement associated with <code>type</code>.
 */
public boolean isValidArrayOrPrimitiveType(PsiType type, Project project) {
  if (type instanceof PsiArrayType) {
    PsiArrayType arrayType = (PsiArrayType) type;
    if (arrayType.getComponentType() instanceof PsiPrimitiveType) {
      return true;
    } else {
      return isValidInnerArrayType(arrayType.getComponentType(), project);
    }
  }

  // Check if type is a Collection
  PsiClassType collectionType =
      JavaPsiFacade.getElementFactory(project).createTypeByFQClassName("java.util.Collection");
  if (collectionType.isAssignableFrom(type)) {
    assert (type instanceof PsiClassType);
    PsiClassType classType = (PsiClassType) type;
    PsiType[] typeParams = classType.getParameters();
    assert (typeParams.length > 0);
    return isValidInnerArrayType(typeParams[0], project);
  }

  return true;
}
 
开发者ID:GoogleCloudPlatform,项目名称:google-cloud-intellij,代码行数:31,代码来源:MethodParameterTypeInspection.java

示例2: create

import com.intellij.psi.PsiArrayType; //导入方法依赖的package包/类
@Nullable
public static TargetType create(final PsiArrayType arrayType) {
  PsiType currentComponentType = arrayType.getComponentType();
  while (currentComponentType instanceof PsiArrayType) {
    currentComponentType = ((PsiArrayType)currentComponentType).getComponentType();
  }
  if (!(currentComponentType instanceof PsiClassType)) {
    return null;
  }
  final String targetQName = arrayType.getCanonicalText();
  return new TargetType(targetQName, true, arrayType);
}
 
开发者ID:jskierbi,项目名称:intellij-ce-playground,代码行数:13,代码来源:TargetType.java

示例3: ConvertCollectionToArrayFix

import com.intellij.psi.PsiArrayType; //导入方法依赖的package包/类
public ConvertCollectionToArrayFix(@NotNull PsiExpression collectionExpression, @NotNull PsiArrayType arrayType)
{
	myCollectionExpression = collectionExpression;

	PsiType componentType = arrayType.getComponentType();
	myNewArrayText = componentType.equalsToText(CommonClassNames.JAVA_LANG_OBJECT) ? "" : "new " + getArrayTypeText(componentType);
}
 
开发者ID:consulo,项目名称:consulo-java,代码行数:8,代码来源:ConvertCollectionToArrayFix.java


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