本文整理汇总了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);
}
示例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);
}