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