ForwardPositionQuery.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / Xml / System / Xml / XPath / Internal / ForwardPositionQuery.cs / 1 / ForwardPositionQuery.cs

                            //------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
// [....] 
//-----------------------------------------------------------------------------
 
namespace MS.Internal.Xml.XPath { 
    using System;
    using System.Xml; 
    using System.Xml.XPath;
    using System.Diagnostics;

    internal class ForwardPositionQuery : CacheOutputQuery { 

        public ForwardPositionQuery(Query input) : base(input) { 
            Debug.Assert(input != null); 
        }
        protected ForwardPositionQuery(ForwardPositionQuery other) : base(other) { } 

        public override object Evaluate(XPathNodeIterator context) {
            base.Evaluate(context);
 
            XPathNavigator node;
            while ((node = base.input.Advance()) != null) { 
                outputBuffer.Add(node.Clone()); 
            }
 
            return this;
        }

        public override XPathNavigator MatchNode(XPathNavigator context) { 
            return input.MatchNode(context);
        } 
 
        public override XPathNodeIterator Clone() { return new ForwardPositionQuery(this); }
    } 
}


 

 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
// [....] 
//-----------------------------------------------------------------------------
 
namespace MS.Internal.Xml.XPath { 
    using System;
    using System.Xml; 
    using System.Xml.XPath;
    using System.Diagnostics;

    internal class ForwardPositionQuery : CacheOutputQuery { 

        public ForwardPositionQuery(Query input) : base(input) { 
            Debug.Assert(input != null); 
        }
        protected ForwardPositionQuery(ForwardPositionQuery other) : base(other) { } 

        public override object Evaluate(XPathNodeIterator context) {
            base.Evaluate(context);
 
            XPathNavigator node;
            while ((node = base.input.Advance()) != null) { 
                outputBuffer.Add(node.Clone()); 
            }
 
            return this;
        }

        public override XPathNavigator MatchNode(XPathNavigator context) { 
            return input.MatchNode(context);
        } 
 
        public override XPathNodeIterator Clone() { return new ForwardPositionQuery(this); }
    } 
}


 

 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.

                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK