Esempio n. 1
0
        /// <summary>
        /// Generate a parser from an IronMeta grammar.
        /// </summary>
        /// <param name="input">Input stream.</param>
        /// <param name="output">Output writer.</param>
        /// <param name="name_space">Namespace to use in the generated parser.</param>
        public static MatchResult <char, AST.Node> Process(IEnumerable <char> input, TextWriter output, string name_space)
        {
            var parser = new BootstrapParser();
            var match  = parser.GetMatch(input, parser.IronMetaFile);

            if (match.Success)
            {
                CSharpGen csgen = new CSharpGen(match.Result, name_space);
                csgen.Generate(output);
            }

            return(match);
        }