Exemple #1
0
        protected override Parser ImplementClone()
        {
            if (SubParser != null) //Okay, this has already been bound.
            {
                return(new LateBound(SubParser));
            }

            var r = new LateBound(); //Track this late bound so we can bind it... later!

            if (Parent == null)      //We are the original late bound
            {
                if (Clones == null)
                {
                    Clones = new List <LateBound>();
                }
                r.Parent = this;
                Clones.Add(r);
            }
            else //We are cloning a clone
            {
                r.Parent = Parent;
                Parent.Clones.Add(r);
            }

            return(r);
        }
Exemple #2
0
        public Parsers.LateBound LateBound()
        {
            var r = new Parsers.LateBound();

            r.Flags = DefaultParserFlags;
            return(r);
        }
Exemple #3
0
        public Parsers.LateBound LateBound()
        {
            var r = new Parsers.LateBound();

            return(r);
        }