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


Java DotNetTypeResolveResult类代码示例

本文整理汇总了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);
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:27,代码来源:CSharpUsingNamespaceOrTypeResolveContext.java

示例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));
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:18,代码来源:CSharpUserTypeRef.java

示例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);
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:27,代码来源:CSharpArrayTypeRef.java

示例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);
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:20,代码来源:CSharpTypeRefByQName.java

示例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));
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:20,代码来源:CSharpGenericWrapperTypeRef.java

示例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);
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:21,代码来源:CSharpLambdaExpressionImplUtil.java

示例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);
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:23,代码来源:CSharpMethodCallExpressionImpl.java

示例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();
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:20,代码来源:CSharpParameterHintsProvider.java

示例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;
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:25,代码来源:CSharpParameterInfoHandler.java

示例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;
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:27,代码来源:CS0815.java

示例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;
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:24,代码来源:CS0146.java

示例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));
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:22,代码来源:CS0453.java

示例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;
}
 
开发者ID:consulo,项目名称:consulo-csharp,代码行数:20,代码来源:CSharpIntroduceLocalVariableHandler.java

示例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;
}
 
开发者ID:consulo,项目名称:consulo-dotnet,代码行数:23,代码来源:MsilReferenceTypeRefImpl.java

示例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;
}
 
开发者ID:consulo,项目名称:consulo-ikvm,代码行数:13,代码来源:IkvmTypeRef.java


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