AliasedExpr.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 / Common / EntitySql / AST / AliasedExpr.cs / 1305376 / AliasedExpr.cs

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

namespace System.Data.Common.EntitySql.AST 
{
    using System;
    using System.Globalization;
    using System.Collections; 
    using System.Collections.Generic;
    using System.Diagnostics; 
 
    /// 
    /// AST node for an aliased expression. 
    /// 
    internal sealed class AliasedExpr : Node
    {
        private readonly Node _expr; 
        private readonly Identifier _alias;
 
        ///  
        /// Constructs an aliased expression node.
        ///  
        internal AliasedExpr(Node expr, Identifier alias)
        {
            Debug.Assert(expr != null, "expr != null");
            Debug.Assert(alias != null, "alias != null"); 

            if (String.IsNullOrEmpty(alias.Name)) 
            { 
                throw EntityUtil.EntitySqlError(alias.ErrCtx, System.Data.Entity.Strings.InvalidEmptyIdentifier);
            } 

            _expr = expr;
            _alias = alias;
        } 

        ///  
        /// Constructs an aliased expression node with null alias. 
        /// 
        internal AliasedExpr(Node expr) 
        {
            Debug.Assert(expr != null, "expr != null");

            _expr = expr; 
        }
 
        internal Node Expr 
        {
            get { return _expr; } 
        }

        /// 
        /// Returns expression alias identifier, or null if not aliased. 
        /// 
        internal Identifier Alias 
        { 
            get { return _alias; }
        } 
    }
}

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

namespace System.Data.Common.EntitySql.AST 
{
    using System;
    using System.Globalization;
    using System.Collections; 
    using System.Collections.Generic;
    using System.Diagnostics; 
 
    /// 
    /// AST node for an aliased expression. 
    /// 
    internal sealed class AliasedExpr : Node
    {
        private readonly Node _expr; 
        private readonly Identifier _alias;
 
        ///  
        /// Constructs an aliased expression node.
        ///  
        internal AliasedExpr(Node expr, Identifier alias)
        {
            Debug.Assert(expr != null, "expr != null");
            Debug.Assert(alias != null, "alias != null"); 

            if (String.IsNullOrEmpty(alias.Name)) 
            { 
                throw EntityUtil.EntitySqlError(alias.ErrCtx, System.Data.Entity.Strings.InvalidEmptyIdentifier);
            } 

            _expr = expr;
            _alias = alias;
        } 

        ///  
        /// Constructs an aliased expression node with null alias. 
        /// 
        internal AliasedExpr(Node expr) 
        {
            Debug.Assert(expr != null, "expr != null");

            _expr = expr; 
        }
 
        internal Node Expr 
        {
            get { return _expr; } 
        }

        /// 
        /// Returns expression alias identifier, or null if not aliased. 
        /// 
        internal Identifier Alias 
        { 
            get { return _alias; }
        } 
    }
}

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