예제 #1
0
        public static List <string> CheckTests(string way, List <string> rules)
        {
            var parsedRules           = Parser.ParseInput(File.OpenRead(way));
            var factorizedRules       = Factorization.RemoveFactorization(parsedRules);
            var removedRecursionRules = LeftRecursionRemover.RemoveLeftRecursion(factorizedRules);
            var leads = Leads.FindLeads(removedRecursionRules).ToList();

            rules.AddRange(removedRecursionRules.Rules.Select((t, i) => t + " / " + ConvertLead(leads[i])));

            return(rules);
        }