ICSharpCode.SharpDevelop.Dom.NRefactoryResolver.CSharpToVBNetConvertVisitor.VisitTypeReference C# (CSharp) Method

VisitTypeReference() public method

public VisitTypeReference ( TypeReference typeReference, object data ) : object
typeReference TypeReference
data object
return object
		public override object VisitTypeReference(TypeReference typeReference, object data)
		{
			while (typeReference.PointerNestingLevel > 0) {
				TypeReference tr = new TypeReference(typeReference.Type) {
					IsKeyword = typeReference.IsKeyword,
					IsGlobal = typeReference.IsGlobal,
				};
				tr.GenericTypes.AddRange(typeReference.GenericTypes);
				
				typeReference = new TypeReference("Pointer") {
					StartLocation = typeReference.StartLocation,
					EndLocation = typeReference.EndLocation,
					PointerNestingLevel = typeReference.PointerNestingLevel - 1,
					GenericTypes = { tr },
					RankSpecifier = typeReference.RankSpecifier
				};
			}
			ReplaceCurrentNode(typeReference);
			return base.VisitTypeReference(typeReference, data);
		}