本文整理汇总了Java中consulo.dotnet.resolve.DotNetTypeResolveResult类的典型用法代码示例。如果您正苦于以下问题:Java DotNetTypeResolveResult类的具体用法?Java DotNetTypeResolveResult怎么用?Java DotNetTypeResolveResult使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
DotNetTypeResolveResult类属于consulo.dotnet.resolve包,在下文中一共展示了DotNetTypeResolveResult类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: compute
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@NotNull
@Override
@RequiredReadAction
protected CSharpResolveContext compute()
{
PsiElement targetElement = null;
DotNetGenericExtractor extractor = DotNetGenericExtractor.EMPTY;
if(myUsingListChild instanceof CSharpUsingNamespaceStatement)
{
targetElement = ((CSharpUsingNamespaceStatement) myUsingListChild).resolve();
}
else if(myUsingListChild instanceof CSharpUsingTypeStatement)
{
DotNetTypeRef typeRef = ((CSharpUsingTypeStatement) myUsingListChild).getTypeRef();
DotNetTypeResolveResult typeResolveResult = typeRef.resolve();
targetElement = typeResolveResult.getElement();
extractor = typeResolveResult.getGenericExtractor();
}
if(targetElement == null)
{
return CSharpResolveContext.EMPTY;
}
return CSharpResolveContextUtil.createContext(extractor, myUsingListChild.getResolveScope(), targetElement);
}
示例2: resolveResult
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@NotNull
@Override
@RequiredReadAction
public DotNetTypeResolveResult resolveResult()
{
PsiElement resolve = myReferenceExpression.resolve();
if(resolve instanceof CSharpMethodDeclaration && ((CSharpMethodDeclaration) resolve).isDelegate())
{
return new LambdaResult(myReferenceExpression, (CSharpMethodDeclaration) resolve, createExtractor(resolve));
}
else if(resolve instanceof CSharpTypeDefStatement)
{
DotNetTypeRef typeRef = ((CSharpTypeDefStatement) resolve).toTypeRef();
return typeRef.resolve();
}
return new Result<>(resolve, createExtractor(resolve));
}
示例3: resolveResult
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
@NotNull
@Override
protected DotNetTypeResolveResult resolveResult()
{
CSharpLightTypeDeclarationBuilder builder = new CSharpLightTypeDeclarationBuilder(myScope);
builder.withParentQName("System");
builder.withName("ArrayImpl[" + CSharpTypeRefPresentationUtil.buildText(myInnerTypeRef, myScope) + "]");
builder.addModifier(DotNetModifier.PUBLIC);
builder.addExtendType(new CSharpTypeRefByQName(myScope, "System.Array"));
if(myDimensions == 0)
{
builder.addExtendType(new CSharpGenericWrapperTypeRef(myScope.getProject(), new CSharpTypeRefByQName(myScope, DotNetTypes.System.Collections.Generic.IEnumerable$1), myInnerTypeRef));
builder.addExtendType(new CSharpGenericWrapperTypeRef(myScope.getProject(), new CSharpTypeRefByQName(myScope, DotNetTypes.System.Collections.Generic.IList$1), myInnerTypeRef));
}
addIndexMethodWithType(DotNetTypes.System.Int32, builder, myScope, myDimensions, myInnerTypeRef);
addIndexMethodWithType(DotNetTypes.System.UInt32, builder, myScope, myDimensions, myInnerTypeRef);
addIndexMethodWithType(DotNetTypes.System.Int64, builder, myScope, myDimensions, myInnerTypeRef);
addIndexMethodWithType(DotNetTypes.System.UInt64, builder, myScope, myDimensions, myInnerTypeRef);
return new ArrayResolveResult(builder, myDimensions, myInnerTypeRef);
}
示例4: resolveResult
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
@NotNull
@Override
protected DotNetTypeResolveResult resolveResult()
{
if(DumbService.isDumb(getProject()))
{
return DotNetTypeResolveResult.EMPTY;
}
DotNetTypeDeclaration type = DotNetPsiSearcher.getInstance(getProject()).findType(myQualifiedName, mySearchScope, CSharpTransform.INSTANCE);
if(type == null)
{
return DotNetTypeResolveResult.EMPTY;
}
return new CSharpUserTypeRef.Result<>(type, DotNetGenericExtractor.EMPTY);
}
示例5: resolveResult
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
@NotNull
@Override
protected DotNetTypeResolveResult resolveResult()
{
DotNetTypeResolveResult typeResolveResult = getInnerTypeRef().resolve();
PsiElement element = typeResolveResult.getElement();
if(typeResolveResult instanceof CSharpLambdaResolveResult)
{
CSharpMethodDeclaration target = ((CSharpLambdaResolveResult) typeResolveResult).getTarget();
if(target == null)
{
return new CSharpUserTypeRef.Result<PsiElement>(element, getGenericExtractor(element));
}
return new CSharpUserTypeRef.LambdaResult(target, target, getGenericExtractor(target));
}
return new CSharpUserTypeRef.Result<PsiElement>(element, getGenericExtractor(element));
}
示例6: resolveLeftLambdaTypeRef
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@Nullable
@RequiredReadAction
public static CSharpLambdaResolveResult resolveLeftLambdaTypeRef(PsiElement target)
{
if(target instanceof CSharpLambdaExpressionImpl)
{
DotNetTypeRef typeRefOfLambda = ((CSharpLambdaExpressionImpl) target).getInferenceSessionTypeRef();
if(typeRefOfLambda != null)
{
DotNetTypeResolveResult typeResolveResult = typeRefOfLambda.resolve();
if(typeResolveResult instanceof CSharpLambdaResolveResult)
{
return (CSharpLambdaResolveResult) typeResolveResult;
}
return null;
}
}
return resolveLambdaTypeRefFromParent(target);
}
示例7: toTypeRefImpl
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@NotNull
@Override
@RequiredReadAction
public DotNetTypeRef toTypeRefImpl(boolean resolveFromParent)
{
PsiElement resolvedElement = resolveToCallable();
if(resolvedElement instanceof DotNetVariable)
{
DotNetTypeRef dotNetTypeRef = ((DotNetVariable) resolvedElement).toTypeRef(false);
DotNetTypeResolveResult typeResolveResult = dotNetTypeRef.resolve();
if(typeResolveResult instanceof CSharpLambdaResolveResult)
{
return ((CSharpLambdaResolveResult) typeResolveResult).getReturnTypeRef();
}
return DotNetTypeRef.ERROR_TYPE;
}
if(resolvedElement instanceof CSharpSimpleLikeMethodAsElement)
{
return ((CSharpSimpleLikeMethodAsElement) resolvedElement).getReturnTypeRef();
}
return CSharpReferenceExpressionImplUtil.toTypeRef(resolvedElement);
}
示例8: buildCallArguments
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
private static List<NCallArgument> buildCallArguments(@NotNull CSharpCallArgument[] callArguments, @NotNull PsiElement callable, @NotNull PsiElement scope)
{
if(callable instanceof DotNetVariable)
{
DotNetTypeRef ref = ((DotNetVariable) callable).toTypeRef(true);
DotNetTypeResolveResult resolve = ref.resolve();
if(resolve instanceof CSharpLambdaResolveResult)
{
return MethodResolver.buildCallArguments(callArguments, ((CSharpLambdaResolveResult) resolve).getParameterInfos(), scope);
}
}
else if(callable instanceof DotNetParameterListOwner)
{
return MethodResolver.buildCallArguments(callArguments, (DotNetParameterListOwner) callable, scope);
}
return Collections.emptyList();
}
示例9: getParametersForLookup
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@Nullable
@Override
@RequiredReadAction
public ItemToShow[] getParametersForLookup(LookupElement item, ParameterInfoContext context)
{
Object object = item.getObject();
if(object instanceof DotNetLikeMethodDeclaration)
{
return new ItemToShow[]{new ItemToShow((CSharpSimpleLikeMethod) object, context.getFile())};
}
if(object instanceof DotNetVariable)
{
DotNetVariable variable = (DotNetVariable) object;
DotNetTypeRef dotNetTypeRef = variable.toTypeRef(tracksParameterIndex());
DotNetTypeResolveResult typeResolveResult = dotNetTypeRef.resolve();
if(typeResolveResult instanceof CSharpLambdaResolveResult)
{
return new ItemToShow[]{new ItemToShow((CSharpSimpleLikeMethod) typeResolveResult, variable)};
}
}
return ItemToShow.EMPTY_ARRAY;
}
示例10: checkImpl
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
@Nullable
@Override
public HighlightInfoFactory checkImpl(@NotNull CSharpLanguageVersion languageVersion, @NotNull CSharpHighlightContext highlightContext, @NotNull CSharpLocalVariable localVariable)
{
DotNetTypeRef dotNetTypeRef = localVariable.toTypeRef(false);
if(dotNetTypeRef == DotNetTypeRef.AUTO_TYPE)
{
DotNetExpression initializer = localVariable.getInitializer();
if(initializer == null)
{
return null;
}
if(CS0023.isNullConstant(initializer))
{
return newBuilder(localVariable.getInitializer(), "null");
}
DotNetTypeRef initializerType = initializer.toTypeRef(false);
DotNetTypeResolveResult typeResolveResult = initializerType.resolve();
if(typeResolveResult instanceof CSharpLambdaResolveResult && ((CSharpLambdaResolveResult) typeResolveResult).getTarget() == null)
{
return newBuilder(localVariable.getInitializer(), "anonymous method");
}
}
return null;
}
示例11: checkImpl
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
@Nullable
@Override
public HighlightInfoFactory checkImpl(@NotNull CSharpLanguageVersion languageVersion, @NotNull CSharpHighlightContext highlightContext, @NotNull CSharpUserType element)
{
if(element.getParent() instanceof DotNetTypeList && element.getParent().getParent() instanceof CSharpTypeDeclaration)
{
CSharpTypeDeclaration parent = (CSharpTypeDeclaration) element.getParent().getParent();
DotNetTypeResolveResult typeResolveResult = element.toTypeRef().resolve();
PsiElement resolvedElement = typeResolveResult.getElement();
if(resolvedElement instanceof CSharpTypeDeclaration)
{
CSharpTypeDeclaration resolvedTypeDeclaration = (CSharpTypeDeclaration) resolvedElement;
if(resolvedElement == parent || resolvedTypeDeclaration.isInheritor(((CSharpTypeDeclaration) resolvedElement).getVmQName(), true))
{
return newBuilder(element, formatElement(parent), formatElement(resolvedElement));
}
}
}
return null;
}
示例12: checkImpl
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
@Nullable
@Override
public CompilerCheckBuilder checkImpl(@NotNull CSharpLanguageVersion languageVersion, @NotNull CSharpHighlightContext highlightContext, @NotNull CSharpNullableType element)
{
DotNetType innerType = element.getInnerType();
if(innerType == null)
{
return null;
}
DotNetTypeRef dotNetTypeRef = innerType.toTypeRef();
DotNetTypeResolveResult typeResolveResult = dotNetTypeRef.resolve();
if(!typeResolveResult.isNullable())
{
return null;
}
PsiElement questElement = element.getQuestElement();
return newBuilder(questElement, formatTypeRef(dotNetTypeRef, element)).addQuickFix(new DeleteQuestMarkQuickFix(element));
}
示例13: canUseVar
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
public static boolean canUseVar(@NotNull DotNetExpression initializer)
{
if(!CSharpModuleUtil.findLanguageVersion(initializer).isAtLeast(CSharpLanguageVersion._3_0))
{
return false;
}
if(CS0023.isNullConstant(initializer))
{
return false;
}
DotNetTypeRef initializerType = initializer.toTypeRef(false);
DotNetTypeResolveResult typeResolveResult = initializerType.resolve();
if(typeResolveResult instanceof CSharpLambdaResolveResult && ((CSharpLambdaResolveResult) typeResolveResult).getTarget() == null)
{
return false;
}
return true;
}
示例14: resolveResult
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
@NotNull
@Override
protected DotNetTypeResolveResult resolveResult()
{
Project project = myElement.getProject();
if(DumbService.isDumb(project))
{
return DotNetTypeResolveResult.EMPTY;
}
DotNetTypeDeclaration[] types = DotNetPsiSearcher.getInstance(project).findTypes(myRef, myElement.getResolveScope());
for(DotNetTypeDeclaration type : types)
{
if(type instanceof MsilClassEntry)
{
return new MsilTypeResolveResult(type, DotNetTypeRef.EMPTY_ARRAY);
}
}
return DotNetTypeResolveResult.EMPTY;
}
示例15: resolveResult
import consulo.dotnet.resolve.DotNetTypeResolveResult; //导入依赖的package包/类
@RequiredReadAction
@NotNull
@Override
protected DotNetTypeResolveResult resolveResult()
{
DotNetTypeDeclaration type = DotNetPsiSearcher.getInstance(myNavTarget.getProject()).findType(myQualifiedName, myNavTarget.getResolveScope());
if(type != null)
{
return new SimpleTypeResolveResult(type);
}
return DotNetTypeResolveResult.EMPTY;
}