ICSharpCode.NRefactory.CSharp.CSharpAmbience.WriteTypeDeclarationName C# (CSharp) Method

WriteTypeDeclarationName() public method

public WriteTypeDeclarationName ( ITypeDefinition typeDef, TokenWriter writer, CSharpFormattingOptions formattingPolicy ) : void
typeDef ITypeDefinition
writer TokenWriter
formattingPolicy CSharpFormattingOptions
return void
		void WriteTypeDeclarationName(ITypeDefinition typeDef, TokenWriter writer, CSharpFormattingOptions formattingPolicy)
		{
			TypeSystemAstBuilder astBuilder = CreateAstBuilder();
			EntityDeclaration node = astBuilder.ConvertEntity(typeDef);
			if (typeDef.DeclaringTypeDefinition != null) {
				WriteTypeDeclarationName(typeDef.DeclaringTypeDefinition, writer, formattingPolicy);
				writer.WriteTokenOperator(Roles.Dot, ".");
			} else if ((ConversionFlags & ConversionFlags.UseFullyQualifiedEntityNames) == ConversionFlags.UseFullyQualifiedEntityNames) {
				if (!string.IsNullOrEmpty(typeDef.Namespace)) {
					WriteQualifiedName(typeDef.Namespace, writer, formattingPolicy);
					writer.WriteTokenOperator(Roles.Dot, ".");
				}
			}
			writer.WriteIdentifier(node.NameToken, BoxedTextColor.Text);
			if ((ConversionFlags & ConversionFlags.ShowTypeParameterList) == ConversionFlags.ShowTypeParameterList) {
				var outputVisitor = new CSharpOutputVisitor(writer, formattingPolicy);
				outputVisitor.WriteTypeParameters(node.GetChildrenByRole(Roles.TypeParameter), CodeBracesRangeFlags.AngleBrackets);
			}
		}