/// <summary>
        /// Compiles an Srgs document to a file
        /// </summary>
        public static void CompileClassLibrary(SrgsDocument srgsGrammar, string outputPath, string[] referencedAssemblies, string keyFile)
        {
            Helpers.ThrowIfNull(srgsGrammar, nameof(srgsGrammar));
            Helpers.ThrowIfEmptyOrNull(outputPath, nameof(outputPath));

            SrgsCompiler.CompileStream(srgsGrammar, outputPath, null, false, referencedAssemblies, keyFile);
        }
        /// <summary>
        /// Compiles an Srgs document to a file
        /// </summary>
        public static void Compile(SrgsDocument srgsGrammar, Stream outputStream)
        {
            Helpers.ThrowIfNull(srgsGrammar, nameof(srgsGrammar));
            Helpers.ThrowIfNull(outputStream, nameof(outputStream));

            SrgsCompiler.CompileStream(srgsGrammar, null, outputStream, true, null, null);
        }