示例#1
0
        protected static ParserFragment CreateParserFragment()
        {
            var parserFragment = new ParserFragment(false);

            CreatedParserFragments.Add(parserFragment);

            return(parserFragment);
        }
示例#2
0
            public ParserFragment AsFragment()
            {
                var parserFragment = new ParserFragment(true);

                parserFragment.Productions.FromBuilder(this);

                return(parserFragment);
            }
            private ParserFragment AsFragment()
            {
                var parserFragment = new ParserFragment(true);

                parserFragment.Productions.Add(new ParserProduction(new ParserEntry[] { this }));

                return(parserFragment);
            }
示例#4
0
            public override ParserEntry CreateParserEntry()
            {
                var fragment = new ParserFragment(true);

                foreach (var interProduction in Productions)
                {
                    fragment.Productions.Add(new ParserProduction(interProduction.Entries.Select(e => e.CreateParserEntry()).ToArray()));
                }

                return(fragment);
            }