Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Internal / SrgsCompiler / propertytag.cs / 1 / propertytag.cs
//------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System; using System.Runtime.InteropServices; using System.Speech.Internal.SrgsParser; #pragma warning disable 1634, 1691 // Allows suppression of certain PreSharp messages. namespace System.Speech.Internal.SrgsCompiler { ////// Summary description for Rule. /// internal sealed class PropertyTag : ParseElement, IPropertyTag { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors internal PropertyTag (ParseElement parent, Backend backend) : base (parent._rule) { } #endregion //******************************************************************** // // Internal Methods // //******************************************************************* #region Internal Methods #pragma warning disable 56507 /// TODOC <_include file='doc\Tag.uex' path='docs/doc[@for="Tag.RepeatProbability"]/*' /> // The probability that this item will be repeated. void IPropertyTag.NameValue (IElement parent, string name, object value) { //Return if the Tag content is empty string sValue = value as string; if (string.IsNullOrEmpty (name) && (value == null || (sValue != null && string.IsNullOrEmpty ((sValue).Trim ())))) { return; } // Build semantic properties to attach to epsilon transition. //Name= pszValue = null vValue = VT_EMPTY //Name="string" pszValue = "string" vValue = VT_EMPTY //Name=true pszValue = null vValue = VT_BOOL //Name=123 pszValue = null vValue = VT_I4 //Name=3.14 pszValue = null vValue = VT_R8 if (!string.IsNullOrEmpty (name)) { // Set property name _propInfo._pszName = name; } else { // If no property, set the name to the anonymous property name _propInfo._pszName = "="; } // Set property value _propInfo._comValue = value; if (value == null) { _propInfo._comType = VarEnum.VT_EMPTY; } else if (sValue != null) { _propInfo._comType = VarEnum.VT_EMPTY; } else if (value is int) { _propInfo._comType = VarEnum.VT_I4; } else if (value is double) { _propInfo._comType = VarEnum.VT_R8; } else if (value is bool) { _propInfo._comType = VarEnum.VT_BOOL; } else { // should never get here System.Diagnostics.Debug.Assert (false); } } void IElement.PostParse (IElement parentElement) { ParseElementCollection parent = (ParseElementCollection) parentElement; _propInfo._ulId = (uint) parent._rule._iSerialize2; // Attach the semantic properties on the parent element. parent.AddSementicPropertyTag (_propInfo); } #pragma warning restore 56507 #endregion //******************************************************************** // // Private Fields // //******************************************************************** #region Private Fields private CfgGrammar.CfgProperty _propInfo = new CfgGrammar.CfgProperty (); #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------- using System; using System.Runtime.InteropServices; using System.Speech.Internal.SrgsParser; #pragma warning disable 1634, 1691 // Allows suppression of certain PreSharp messages. namespace System.Speech.Internal.SrgsCompiler { ////// Summary description for Rule. /// internal sealed class PropertyTag : ParseElement, IPropertyTag { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors internal PropertyTag (ParseElement parent, Backend backend) : base (parent._rule) { } #endregion //******************************************************************** // // Internal Methods // //******************************************************************* #region Internal Methods #pragma warning disable 56507 /// TODOC <_include file='doc\Tag.uex' path='docs/doc[@for="Tag.RepeatProbability"]/*' /> // The probability that this item will be repeated. void IPropertyTag.NameValue (IElement parent, string name, object value) { //Return if the Tag content is empty string sValue = value as string; if (string.IsNullOrEmpty (name) && (value == null || (sValue != null && string.IsNullOrEmpty ((sValue).Trim ())))) { return; } // Build semantic properties to attach to epsilon transition. //Name= pszValue = null vValue = VT_EMPTY //Name="string" pszValue = "string" vValue = VT_EMPTY //Name=true pszValue = null vValue = VT_BOOL //Name=123 pszValue = null vValue = VT_I4 //Name=3.14 pszValue = null vValue = VT_R8 if (!string.IsNullOrEmpty (name)) { // Set property name _propInfo._pszName = name; } else { // If no property, set the name to the anonymous property name _propInfo._pszName = "="; } // Set property value _propInfo._comValue = value; if (value == null) { _propInfo._comType = VarEnum.VT_EMPTY; } else if (sValue != null) { _propInfo._comType = VarEnum.VT_EMPTY; } else if (value is int) { _propInfo._comType = VarEnum.VT_I4; } else if (value is double) { _propInfo._comType = VarEnum.VT_R8; } else if (value is bool) { _propInfo._comType = VarEnum.VT_BOOL; } else { // should never get here System.Diagnostics.Debug.Assert (false); } } void IElement.PostParse (IElement parentElement) { ParseElementCollection parent = (ParseElementCollection) parentElement; _propInfo._ulId = (uint) parent._rule._iSerialize2; // Attach the semantic properties on the parent element. parent.AddSementicPropertyTag (_propInfo); } #pragma warning restore 56507 #endregion //******************************************************************** // // Private Fields // //******************************************************************** #region Private Fields private CfgGrammar.CfgProperty _propInfo = new CfgGrammar.CfgProperty (); #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- DebugView.cs
- DesignerLoader.cs
- TransactionTraceIdentifier.cs
- TrustManagerPromptUI.cs
- _NTAuthentication.cs
- ListViewGroup.cs
- BindingCollection.cs
- TraceContextEventArgs.cs
- StylusPlugInCollection.cs
- StreamResourceInfo.cs
- DataGridViewTextBoxCell.cs
- Point3D.cs
- TypeSystem.cs
- CollectionContainer.cs
- OutputScopeManager.cs
- PieceDirectory.cs
- FormatControl.cs
- MILUtilities.cs
- StringFormat.cs
- HttpCacheVaryByContentEncodings.cs
- DesignTimeVisibleAttribute.cs
- DeploymentSectionCache.cs
- RoleService.cs
- CollectionViewGroupRoot.cs
- ExpressionBuilder.cs
- BitmapPalettes.cs
- IProvider.cs
- GridViewEditEventArgs.cs
- PreProcessInputEventArgs.cs
- Exceptions.cs
- DataSourceXmlSerializer.cs
- FileDialogCustomPlacesCollection.cs
- DynamicDataResources.Designer.cs
- StatusBar.cs
- BitVector32.cs
- _SslStream.cs
- COM2PictureConverter.cs
- AutoScrollExpandMessageFilter.cs
- SecurityCriticalDataForSet.cs
- DisplayInformation.cs
- IndependentAnimationStorage.cs
- DataGrid.cs
- TextReader.cs
- EntityDescriptor.cs
- EmptyImpersonationContext.cs
- LambdaCompiler.Statements.cs
- Int32RectConverter.cs
- NotCondition.cs
- SystemIPGlobalProperties.cs
- InstallerTypeAttribute.cs
- SplineQuaternionKeyFrame.cs
- PersianCalendar.cs
- AmbientValueAttribute.cs
- MediaTimeline.cs
- HiddenFieldPageStatePersister.cs
- HandleCollector.cs
- COSERVERINFO.cs
- CultureInfo.cs
- PathFigure.cs
- RequestStatusBarUpdateEventArgs.cs
- BaseHashHelper.cs
- ShaperBuffers.cs
- Identifier.cs
- PageBorderless.cs
- ECDiffieHellman.cs
- LayoutSettings.cs
- SamlSubjectStatement.cs
- CancellationScope.cs
- XmlRawWriter.cs
- PackageProperties.cs
- IDReferencePropertyAttribute.cs
- BuildProviderCollection.cs
- XmlUnspecifiedAttribute.cs
- ToolStripProfessionalLowResolutionRenderer.cs
- ArgumentOutOfRangeException.cs
- Process.cs
- ProfilePropertySettingsCollection.cs
- TextWriter.cs
- AutoGeneratedField.cs
- UInt64.cs
- InternalDuplexChannelFactory.cs
- CallInfo.cs
- ObjectDataSourceMethodEventArgs.cs
- RewritingPass.cs
- KnownTypesHelper.cs
- FirstMatchCodeGroup.cs
- ColorContext.cs
- ObjectDataSourceChooseMethodsPanel.cs
- TraceUtility.cs
- DataObjectFieldAttribute.cs
- HandlerMappingMemo.cs
- FieldValue.cs
- NotImplementedException.cs
- EventNotify.cs
- UnmanagedMemoryStream.cs
- AccessText.cs
- UTF32Encoding.cs
- HttpResponse.cs
- ProgressBar.cs
- XPathNavigator.cs