Example #1
0
        ///-------------------------------------------------------------------------------------------------
        /// <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();
            }
        }
Example #2
0
        ///-------------------------------------------------------------------------------------------------
        /// <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();
            }
        }