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
- DataSourceCache.cs
- StrokeNodeOperations.cs
- DoubleCollection.cs
- translator.cs
- ContextMenuStrip.cs
- DataGridParentRows.cs
- Column.cs
- WindowsRichEdit.cs
- DetailsViewUpdatedEventArgs.cs
- FixUp.cs
- XmlParserContext.cs
- ObjectStateEntry.cs
- ClientUrlResolverWrapper.cs
- AssociationProvider.cs
- IIS7UserPrincipal.cs
- MouseOverProperty.cs
- Positioning.cs
- SapiRecoInterop.cs
- DoubleKeyFrameCollection.cs
- VirtualizingStackPanel.cs
- XmlElementAttribute.cs
- RuntimeConfig.cs
- Stack.cs
- SqlMethods.cs
- UserMapPath.cs
- BamlLocalizerErrorNotifyEventArgs.cs
- ServiceEndpointElement.cs
- GenericNameHandler.cs
- ClientData.cs
- TransportElement.cs
- AttachInfo.cs
- UTF7Encoding.cs
- XmlUnspecifiedAttribute.cs
- Queue.cs
- HyperLink.cs
- ListBoxItem.cs
- UInt64.cs
- TextRangeProviderWrapper.cs
- StreamSecurityUpgradeAcceptor.cs
- PathSegmentCollection.cs
- PopupRootAutomationPeer.cs
- HierarchicalDataBoundControlAdapter.cs
- ViewUtilities.cs
- ProviderUtil.cs
- DataGridLinkButton.cs
- TracingConnectionInitiator.cs
- StateMachineDesignerPaint.cs
- DetailsViewModeEventArgs.cs
- LabelLiteral.cs
- EntityDataSourceDataSelectionPanel.cs
- AffineTransform3D.cs
- DocumentGridContextMenu.cs
- InputLanguageManager.cs
- WebPartMinimizeVerb.cs
- StringDictionaryCodeDomSerializer.cs
- SamlNameIdentifierClaimResource.cs
- _UriTypeConverter.cs
- UnsafeNativeMethods.cs
- TargetInvocationException.cs
- TriState.cs
- xmlsaver.cs
- SeekStoryboard.cs
- ChangeToolStripParentVerb.cs
- AttributeQuery.cs
- Exception.cs
- SamlAssertionKeyIdentifierClause.cs
- RelAssertionDirectKeyIdentifierClause.cs
- BooleanFunctions.cs
- StringConcat.cs
- Transform.cs
- MSHTMLHost.cs
- DirectoryObjectSecurity.cs
- SimpleHandlerBuildProvider.cs
- BooleanExpr.cs
- __ComObject.cs
- LayoutExceptionEventArgs.cs
- ContextMenuStrip.cs
- ProcessManager.cs
- TemplateControl.cs
- DataGridDefaultColumnWidthTypeConverter.cs
- ButtonBaseAdapter.cs
- StaticSiteMapProvider.cs
- MetaType.cs
- AddingNewEventArgs.cs
- GlyphRunDrawing.cs
- JsonXmlDataContract.cs
- FormsAuthenticationEventArgs.cs
- ServiceHost.cs
- DeviceContext.cs
- HtmlInputFile.cs
- RectConverter.cs
- ExecutionContext.cs
- DataTableReader.cs
- MembershipUser.cs
- RelationshipDetailsRow.cs
- HtmlInputRadioButton.cs
- CodeEventReferenceExpression.cs
- HwndSource.cs
- LabelLiteral.cs
- ResourceCodeDomSerializer.cs