1 //------------------------------------------------------------------------------
2 // <copyright file="QilLoop.cs" company="Microsoft">
3 //     Copyright (c) Microsoft Corporation.  All rights reserved.
4 // </copyright>
5 // <owner current="true" primary="true">Microsoft</owner>
6 //------------------------------------------------------------------------------
7 using System;
8 using System.Collections;
9 using System.Diagnostics;
10 using System.Xml.Schema;
11 using System.Xml.Xsl;
12 
13 namespace System.Xml.Xsl.Qil {
14 
15     /// <summary>
16     /// View over a Qil operators that introduce iterators (Loop, Filter, etc.).
17     /// </summary>
18     /// <remarks>
19     /// Don't construct QIL nodes directly; instead, use the <see cref="QilFactory">QilFactory</see>.
20     /// </remarks>
21     internal class QilLoop : QilBinary {
22 
23         //-----------------------------------------------
24         // Constructor
25         //-----------------------------------------------
26 
27         /// <summary>
28         /// Construct a new node
29         /// </summary>
QilLoop(QilNodeType nodeType, QilNode variable, QilNode body)30         public QilLoop(QilNodeType nodeType, QilNode variable, QilNode body) : base(nodeType, variable, body) {
31         }
32 
33 
34         //-----------------------------------------------
35         // QilLoop methods
36         //-----------------------------------------------
37 
38         public QilIterator Variable {
39             get { return (QilIterator) Left; }
40             set { Left = value; }
41         }
42 
43         public QilNode Body {
44             get { return Right; }
45             set { Right = value; }
46         }
47     }
48 }
49