1 //------------------------------------------------------------------------------ 2 // <copyright file="GroupQuery.cs" company="Microsoft"> 3 // Copyright (c) Microsoft Corporation. All rights reserved. 4 // </copyright> 5 // <owner current="true" primary="true">Microsoft</owner> 6 //------------------------------------------------------------------------------ 7 8 namespace MS.Internal.Xml.XPath { 9 using System; 10 using System.Xml; 11 using System.Xml.XPath; 12 using System.Diagnostics; 13 using System.Globalization; 14 15 internal sealed class GroupQuery : BaseAxisQuery { 16 GroupQuery(Query qy)17 public GroupQuery(Query qy): base(qy) {} GroupQuery(GroupQuery other)18 private GroupQuery(GroupQuery other) : base(other) { } 19 Advance()20 public override XPathNavigator Advance() { 21 currentNode = qyInput.Advance(); 22 if (currentNode != null) { 23 position++; 24 } 25 return currentNode; 26 } 27 Evaluate(XPathNodeIterator nodeIterator)28 public override object Evaluate(XPathNodeIterator nodeIterator) { 29 return qyInput.Evaluate(nodeIterator); 30 } 31 Clone()32 public override XPathNodeIterator Clone() { return new GroupQuery(this); } 33 public override XPathResultType StaticType { get { return qyInput.StaticType; } } 34 public override QueryProps Properties { get { return QueryProps.Position; } } // Doesn't have QueryProps.Merge 35 } 36 } 37