Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / 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
- InvokeMethodActivity.cs
- LineGeometry.cs
- CommunicationObjectFaultedException.cs
- XmlCollation.cs
- TableColumnCollection.cs
- Boolean.cs
- DecimalAverageAggregationOperator.cs
- MenuBase.cs
- WebPartEventArgs.cs
- FixedPageAutomationPeer.cs
- RadioButtonRenderer.cs
- EditingCommands.cs
- XsltOutput.cs
- BlurBitmapEffect.cs
- _SslStream.cs
- SimpleWorkerRequest.cs
- XmlSchemaComplexType.cs
- UnmanagedMemoryStreamWrapper.cs
- EventlogProvider.cs
- SafeEventLogReadHandle.cs
- AnnouncementEventArgs.cs
- LongCountAggregationOperator.cs
- SapiRecoInterop.cs
- Random.cs
- DataBoundLiteralControl.cs
- EntityContainerEmitter.cs
- OracleRowUpdatingEventArgs.cs
- ItemsControl.cs
- LiteralLink.cs
- OracleCommand.cs
- GroupBox.cs
- MultipleViewPattern.cs
- ThreadInterruptedException.cs
- TextTreeRootTextBlock.cs
- SourceElementsCollection.cs
- MultipleViewPattern.cs
- KnownTypesHelper.cs
- DesignerWebPartChrome.cs
- GeometryDrawing.cs
- Typeface.cs
- SecurityElement.cs
- ChildrenQuery.cs
- WebBrowserProgressChangedEventHandler.cs
- OrCondition.cs
- GeneralTransformCollection.cs
- PreloadedPackages.cs
- Divide.cs
- PathFigureCollection.cs
- XmlSchemaSet.cs
- DataGridCell.cs
- SafeRightsManagementHandle.cs
- TextServicesPropertyRanges.cs
- DataSourceCacheDurationConverter.cs
- ConditionalAttribute.cs
- AbsoluteQuery.cs
- EventLogPermissionAttribute.cs
- XmlArrayAttribute.cs
- System.Data.OracleClient_BID.cs
- BufferModesCollection.cs
- ProtocolsConfigurationHandler.cs
- WinFormsComponentEditor.cs
- LinqToSqlWrapper.cs
- autovalidator.cs
- Transform3D.cs
- CompositeScriptReference.cs
- PaintValueEventArgs.cs
- TextRangeEditLists.cs
- TextParaClient.cs
- AppSettingsReader.cs
- Messages.cs
- DelegatingConfigHost.cs
- CompilationUnit.cs
- HostSecurityManager.cs
- RenderData.cs
- InfoCardX509Validator.cs
- DescendantOverDescendantQuery.cs
- XmlSchemaAttributeGroup.cs
- InvalidDocumentContentsException.cs
- DataColumnPropertyDescriptor.cs
- IgnoreFileBuildProvider.cs
- HelpInfo.cs
- DesignerToolboxInfo.cs
- EventListenerClientSide.cs
- XamlInt32CollectionSerializer.cs
- CollectionBuilder.cs
- StylusPointPropertyId.cs
- OleDbDataReader.cs
- Query.cs
- Transform.cs
- Parser.cs
- ExtendedPropertyDescriptor.cs
- DataMisalignedException.cs
- FormCollection.cs
- RuleInfoComparer.cs
- AnonymousIdentificationSection.cs
- PointAnimationBase.cs
- FontWeights.cs
- InteropAutomationProvider.cs
- ClientTargetSection.cs
- DefaultValidator.cs