private static string GetFilename(IAssembly assembly, WriterType writer, SyntaxWriterType syntax) { string name = assembly.Name.Value; switch (writer) { case WriterType.DocIds: case WriterType.TypeForwards: return(name + ".txt"); case WriterType.TypeList: case WriterType.CSDecl: default: switch (syntax) { case SyntaxWriterType.Xml: return(name + ".xml"); case SyntaxWriterType.Html: return(name + ".html"); case SyntaxWriterType.Text: default: return(name + ".cs"); } } }
private static string GetFilename(IAssembly assembly, WriterType writer, SyntaxWriterType syntax) { string name = assembly.Name.Value; return(writer switch { WriterType.DocIds or WriterType.TypeForwards => name + ".txt", _ => syntax switch { SyntaxWriterType.Xml => name + ".xml", SyntaxWriterType.Html => name + ".html", _ => name + ".cs", }, });
private static string GetHeaderText(string headerFile, WriterType writerType, SyntaxWriterType syntaxWriterType) { if (!string.IsNullOrEmpty(headerFile)) { return(File.ReadAllText(headerFile)); } string defaultHeader = string.Empty; // This header is for CS source only if ((writerType == WriterType.CSDecl || writerType == WriterType.TypeForwards) && syntaxWriterType == SyntaxWriterType.Text) { // Write default header (culture-invariant, so that the generated file will not be language-dependent) defaultHeader = string.Format(CultureInfo.InvariantCulture, DefaultFileHeader, typeof(GenAPITask).Assembly.GetName().Version.ToString()); } return(defaultHeader); }
private static IStyleSyntaxWriter GetSyntaxWriter(TextWriter output, WriterType writer, SyntaxWriterType syntax) { if (writer != WriterType.CSDecl && writer != WriterType.TypeList) { return(null); } switch (syntax) { case SyntaxWriterType.Xml: return(new OpenXmlSyntaxWriter(output)); case SyntaxWriterType.Html: return(new HtmlSyntaxWriter(output)); case SyntaxWriterType.Text: default: return(new TextSyntaxWriter(output) { SpacesInIndent = 4 }); } }
private static string GetHeaderText(string headerFile, CommandLineApplication app, WriterType writerType, SyntaxWriterType syntaxWriterType) { if (string.IsNullOrEmpty(headerFile)) { string defaultHeader = String.Empty; // This header is for CS source only if ((writerType == WriterType.CSDecl || writerType == WriterType.TypeForwards) && syntaxWriterType == SyntaxWriterType.Text) { // Write default header (culture-invariant, so that the generated file will not be language-dependent) defaultHeader = String.Format(CultureInfo.InvariantCulture, DefaultFileHeader, app.Name, app.ShortVersionGetter()); } return(defaultHeader); } if (!File.Exists(headerFile)) { Console.WriteLine("ERROR: header file '{0}' does not exist", headerFile); return(null); } return(File.ReadAllText(headerFile)); }