///------------------------------------------------------------------------------------------------- /// <summary>Writes a C#.</summary> /// /// <remarks>Gino Canessa, 8/12/2019.</remarks> /// /// <param name="options">Options for controlling the operation.</param> ///------------------------------------------------------------------------------------------------- static void WriteCSharp(Options options, int style) { LanguageCSharp lang = new LanguageCSharp(); // **** set the style **** lang.LanguageStyle = style; // **** enable/disable polymorphic deserialization **** lang.PolymorphicDeserialization = options.LanguageCSharpPolymorphic; // **** for our filename **** string filename; // **** check for having an extension **** if (Path.HasExtension(options.OutputFile)) { filename = options.OutputFile; } else { filename = $"{options.OutputFile}{lang.GetFilenamePartForStyle}.{((ILanguangeExporter)lang).SourceFileExtension}"; } // **** **** Console.WriteLine($"Writing C# ({lang.GetStyleName}) file: {filename}"); // **** start our file **** using (StreamWriter writer = new StreamWriter(filename)) { // **** output our data **** FhirTypeManager.OutputForLang( writer, lang, options.TypesToOutput, options.OutputNamespace, options.ExcludeCodes ); writer.Flush(); } }
///------------------------------------------------------------------------------------------------- /// <summary>Writes the TypeScript file</summary> /// /// <remarks>Gino Canessa, 7/31/2019.</remarks> /// /// <param name="options">Options for controlling the operation.</param> ///------------------------------------------------------------------------------------------------- static void WriteTypeScript(Options options) { LanguageTypeScript lang = new LanguageTypeScript(); string filename; // **** check for having an extension **** if (Path.HasExtension(options.OutputFile)) { filename = options.OutputFile; } else { filename = $"{options.OutputFile}.{((ILanguangeExporter)lang).SourceFileExtension}"; } // **** **** Console.WriteLine($"Writing TypeScript file: {filename}"); // **** start our file **** using (StreamWriter writer = new StreamWriter(filename)) { // **** output our data **** FhirTypeManager.OutputForLang( writer, lang, options.TypesToOutput, options.OutputNamespace, options.ExcludeCodes ); writer.Flush(); } }