AncillaryOps.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Query / InternalTrees / AncillaryOps.cs / 1305376 / AncillaryOps.cs

                            //---------------------------------------------------------------------- 
// 
//      Copyright (c) Microsoft Corporation.  All rights reserved.
// 
// 
// @owner  [....]
// @backupOwner [....] 
//--------------------------------------------------------------------- 

using System; 
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
 
namespace System.Data.Query.InternalTrees
{ 
    ///  
    /// A definition of a variable
    ///  
    internal sealed class VarDefOp : AncillaryOp
    {
        #region private state
        private Var m_var; 
        #endregion
 
        #region constructors 
        internal VarDefOp(Var v) : this()
        { 
            m_var = v;
        }
        private VarDefOp() : base(OpType.VarDef) { }
        #endregion 

        #region public methods 
        internal static readonly VarDefOp Pattern = new VarDefOp(); 

        ///  
        /// 1 child - the defining expression
        /// 
        internal override int Arity { get { return 1; } }
 
        /// 
        /// The Var being defined 
        ///  
        internal Var Var { get { return m_var; } }
 
        /// 
        /// Visitor pattern method
        /// 
        /// The BasicOpVisitor that is visiting this Op 
        /// The Node that references this Op
        [DebuggerNonUserCode] 
        internal override void Accept(BasicOpVisitor v, Node n) { v.Visit(this, n); } 

        ///  
        /// Visitor pattern method for visitors with a return value
        /// 
        /// The visitor
        /// The node in question 
        /// An instance of TResultType
        [DebuggerNonUserCode] 
        internal override TResultType Accept(BasicOpVisitorOfT v, Node n) { return v.Visit(this, n); } 
        #endregion
    } 

    /// 
    /// Helps define a list of VarDefOp
    ///  
    internal sealed class VarDefListOp : AncillaryOp
    { 
        #region constructors 
        private VarDefListOp() : base(OpType.VarDefList) { }
        #endregion 

        #region public methods
        /// 
        /// singleton instance 
        /// 
        internal static readonly VarDefListOp Instance = new VarDefListOp(); 
        internal static readonly VarDefListOp Pattern = Instance; 

        ///  
        /// Visitor pattern method
        /// 
        /// The BasicOpVisitor that is visiting this Op
        /// The Node that references this Op 
        [DebuggerNonUserCode]
        internal override void Accept(BasicOpVisitor v, Node n) { v.Visit(this, n); } 
 
        /// 
        /// Visitor pattern method for visitors with a return value 
        /// 
        /// The visitor
        /// The node in question
        /// An instance of TResultType 
        [DebuggerNonUserCode]
        internal override TResultType Accept(BasicOpVisitorOfT v, Node n) { return v.Visit(this, n); } 
        #endregion 
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//---------------------------------------------------------------------- 
// 
//      Copyright (c) Microsoft Corporation.  All rights reserved.
// 
// 
// @owner  [....]
// @backupOwner [....] 
//--------------------------------------------------------------------- 

using System; 
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
 
namespace System.Data.Query.InternalTrees
{ 
    ///  
    /// A definition of a variable
    ///  
    internal sealed class VarDefOp : AncillaryOp
    {
        #region private state
        private Var m_var; 
        #endregion
 
        #region constructors 
        internal VarDefOp(Var v) : this()
        { 
            m_var = v;
        }
        private VarDefOp() : base(OpType.VarDef) { }
        #endregion 

        #region public methods 
        internal static readonly VarDefOp Pattern = new VarDefOp(); 

        ///  
        /// 1 child - the defining expression
        /// 
        internal override int Arity { get { return 1; } }
 
        /// 
        /// The Var being defined 
        ///  
        internal Var Var { get { return m_var; } }
 
        /// 
        /// Visitor pattern method
        /// 
        /// The BasicOpVisitor that is visiting this Op 
        /// The Node that references this Op
        [DebuggerNonUserCode] 
        internal override void Accept(BasicOpVisitor v, Node n) { v.Visit(this, n); } 

        ///  
        /// Visitor pattern method for visitors with a return value
        /// 
        /// The visitor
        /// The node in question 
        /// An instance of TResultType
        [DebuggerNonUserCode] 
        internal override TResultType Accept(BasicOpVisitorOfT v, Node n) { return v.Visit(this, n); } 
        #endregion
    } 

    /// 
    /// Helps define a list of VarDefOp
    ///  
    internal sealed class VarDefListOp : AncillaryOp
    { 
        #region constructors 
        private VarDefListOp() : base(OpType.VarDefList) { }
        #endregion 

        #region public methods
        /// 
        /// singleton instance 
        /// 
        internal static readonly VarDefListOp Instance = new VarDefListOp(); 
        internal static readonly VarDefListOp Pattern = Instance; 

        ///  
        /// Visitor pattern method
        /// 
        /// The BasicOpVisitor that is visiting this Op
        /// The Node that references this Op 
        [DebuggerNonUserCode]
        internal override void Accept(BasicOpVisitor v, Node n) { v.Visit(this, n); } 
 
        /// 
        /// Visitor pattern method for visitors with a return value 
        /// 
        /// The visitor
        /// The node in question
        /// An instance of TResultType 
        [DebuggerNonUserCode]
        internal override TResultType Accept(BasicOpVisitorOfT v, Node n) { return v.Visit(this, n); } 
        #endregion 
    }
} 

// 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