GrammarBuilderRuleRef.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Internal / GrammarBuilding / GrammarBuilderRuleRef.cs / 1 / GrammarBuilderRuleRef.cs

                            //------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//----------------------------------------------------------------- 

#define CODE_ANALYSIS 
 
using System.Speech.Recognition;
using System.Speech.Internal.SrgsParser; 
using System.Diagnostics;

namespace System.Speech.Internal.GrammarBuilding
{ 
    /// 
    /// 
    ///  
    internal sealed class GrammarBuilderRuleRef : GrammarBuilderBase
    { 

        //*******************************************************************
        //
        // Constructors 
        //
        //******************************************************************* 
 
        #region Constructors
 
        /// 
        ///
        /// 
        ///  
        /// 
        internal GrammarBuilderRuleRef (Uri uri, string rule) 
        { 
            _uri = uri.OriginalString + ((rule != null) ? "#" + rule : "");
        } 

        /// 
        ///
        ///  
        /// 
        private GrammarBuilderRuleRef (string sgrsUri) 
        { 
            _uri = sgrsUri;
        } 

        #endregion

        //******************************************************************** 
        //
        // Public Methods 
        // 
        //*******************************************************************
 
        #region Public Methods

        /// TODOC <_include file='doc\SpeechAudioFormatInfo.uex' path='docs/doc[@for="SpeechAudioFormatInfo.Equals"]/*' />
        public override bool Equals (object obj) 
        {
            GrammarBuilderRuleRef refObj = obj as GrammarBuilderRuleRef; 
            if (refObj == null) 
            {
                return false; 
            }
            return _uri == refObj._uri;
        }
 
        /// TODOC <_include file='doc\SpeechAudioFormatInfo.uex' path='docs/doc[@for="SpeechAudioFormatInfo.GetHashCode"]/*' />
        public override int GetHashCode () 
        { 
            return _uri.GetHashCode ();
        } 

        #endregion

        //******************************************************************** 
        //
        // Internal Methods 
        // 
        //********************************************************************
 
        #region Internal Methods

        /// 
        /// 
        /// 
        ///  
        internal override GrammarBuilderBase Clone () 
        {
            return new GrammarBuilderRuleRef (_uri); 
        }

        /// 
        /// 
        /// 
        ///  
        ///  
        /// 
        ///  
        /// 
        internal override IElement CreateElement (IElementFactory elementFactory, IElement parent, IRule rule, IdentifierCollection ruleIds)
        {
            Uri ruleUri = new Uri (_uri, UriKind.RelativeOrAbsolute); 
            return elementFactory.CreateRuleRef (parent, ruleUri, null, null);
        } 
 
        #endregion
 

        //*******************************************************************
        //
        // Internal Properties 
        //
        //******************************************************************** 
 
        #region Internal Properties
 
        override internal string DebugSummary
        {
            get
            { 
                return "#" + _uri;
            } 
        } 

        #endregion 

        //*******************************************************************
        //
        // Private Fields 
        //
        //******************************************************************* 
 
        #region Private Fields
 
        /// 
        ///
        /// 
        private readonly string _uri; 

        #endregion 
 
    }
} 

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

#define CODE_ANALYSIS 
 
using System.Speech.Recognition;
using System.Speech.Internal.SrgsParser; 
using System.Diagnostics;

namespace System.Speech.Internal.GrammarBuilding
{ 
    /// 
    /// 
    ///  
    internal sealed class GrammarBuilderRuleRef : GrammarBuilderBase
    { 

        //*******************************************************************
        //
        // Constructors 
        //
        //******************************************************************* 
 
        #region Constructors
 
        /// 
        ///
        /// 
        ///  
        /// 
        internal GrammarBuilderRuleRef (Uri uri, string rule) 
        { 
            _uri = uri.OriginalString + ((rule != null) ? "#" + rule : "");
        } 

        /// 
        ///
        ///  
        /// 
        private GrammarBuilderRuleRef (string sgrsUri) 
        { 
            _uri = sgrsUri;
        } 

        #endregion

        //******************************************************************** 
        //
        // Public Methods 
        // 
        //*******************************************************************
 
        #region Public Methods

        /// TODOC <_include file='doc\SpeechAudioFormatInfo.uex' path='docs/doc[@for="SpeechAudioFormatInfo.Equals"]/*' />
        public override bool Equals (object obj) 
        {
            GrammarBuilderRuleRef refObj = obj as GrammarBuilderRuleRef; 
            if (refObj == null) 
            {
                return false; 
            }
            return _uri == refObj._uri;
        }
 
        /// TODOC <_include file='doc\SpeechAudioFormatInfo.uex' path='docs/doc[@for="SpeechAudioFormatInfo.GetHashCode"]/*' />
        public override int GetHashCode () 
        { 
            return _uri.GetHashCode ();
        } 

        #endregion

        //******************************************************************** 
        //
        // Internal Methods 
        // 
        //********************************************************************
 
        #region Internal Methods

        /// 
        /// 
        /// 
        ///  
        internal override GrammarBuilderBase Clone () 
        {
            return new GrammarBuilderRuleRef (_uri); 
        }

        /// 
        /// 
        /// 
        ///  
        ///  
        /// 
        ///  
        /// 
        internal override IElement CreateElement (IElementFactory elementFactory, IElement parent, IRule rule, IdentifierCollection ruleIds)
        {
            Uri ruleUri = new Uri (_uri, UriKind.RelativeOrAbsolute); 
            return elementFactory.CreateRuleRef (parent, ruleUri, null, null);
        } 
 
        #endregion
 

        //*******************************************************************
        //
        // Internal Properties 
        //
        //******************************************************************** 
 
        #region Internal Properties
 
        override internal string DebugSummary
        {
            get
            { 
                return "#" + _uri;
            } 
        } 

        #endregion 

        //*******************************************************************
        //
        // Private Fields 
        //
        //******************************************************************* 
 
        #region Private Fields
 
        /// 
        ///
        /// 
        private readonly string _uri; 

        #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