Code:
/ DotNET / DotNET / 8.0 / untmp / WIN_WINDOWS / lh_tools_devdiv_wpf / Windows / wcp / Speech / Src / Recognition / SrgsGrammar / SrgsOneOf.cs / 1 / SrgsOneOf.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: // // History: // 5/1/2004 [....] Created from the Kurosawa Code //--------------------------------------------------------------------------- using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Diagnostics; using System.Globalization; using System.Speech.Internal; using System.Speech.Internal.SrgsParser; using System.Text; using System.Xml; namespace System.Speech.Recognition.SrgsGrammar { /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf"]/*' /> [Serializable] [DebuggerDisplay ("{DebuggerDisplayString ()}")] [DebuggerTypeProxy (typeof (OneOfDebugDisplay))] public class SrgsOneOf : SrgsElement, IOneOf { //******************************************************************* // // Constructors // //******************************************************************* #region Constructors /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.OneOf1"]/*' /> public SrgsOneOf () { } /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.OneOf2"]/*' /> public SrgsOneOf (params string [] items) : this () { Helpers.ThrowIfNull (items, "items"); for (int i = 0; i < items.Length; i++) { if (items [i] == null) { throw new ArgumentNullException ("items", SR.Get (SRID.ParamsEntryNullIllegal)); } _items.Add (new SrgsItem (items [i])); } } /// TODOC <_include file='doc\OneOf.uex' path='docs/doc[@for="OneOf.OneOf3"]/*' /> public SrgsOneOf (params SrgsItem [] items) : this () { Helpers.ThrowIfNull (items, "items"); for (int i = 0; i < items.Length; i++) { SrgsItem item = items [i]; if (item == null) { throw new ArgumentNullException ("items", SR.Get (SRID.ParamsEntryNullIllegal)); } _items.Add (item); } } #endregion //******************************************************************** // // Public Methods // //******************************************************************* #region public Method ////// TODOC /// /// public void Add (SrgsItem item) { Helpers.ThrowIfNull (item, "item"); Items.Add (item); } #endregion //******************************************************************** // // Public Properties // //******************************************************************** #region public Properties // public CollectionItems { get { return _items; } } #endregion //******************************************************************* // // Internal Methods // //******************************************************************** #region internal Methods internal override void WriteSrgs (XmlWriter writer) { // Write ... writer.WriteStartElement ("one-of"); foreach (SrgsItem element in _items) { element.WriteSrgs (writer); } writer.WriteEndElement (); } internal override string DebuggerDisplayString () { StringBuilder sb = new StringBuilder ("SrgsOneOf Count = "); sb.Append (_items.Count); return sb.ToString (); } #endregion //******************************************************************* // // Protected Properties // //******************************************************************* #region Protected Properties ////// Allows the Srgs Element base class to implement /// features requiring recursion in the elements tree. /// ///internal override SrgsElement [] Children { get { SrgsElement [] elements = new SrgsElement [_items.Count]; int i = 0; foreach (SrgsItem item in _items) { elements [i++] = item; } return elements; } } #endregion //******************************************************************* // // Private Fields // //******************************************************************** #region Private Fields private SrgsItemList _items = new SrgsItemList (); #endregion //******************************************************************* // // Private Types // //******************************************************************** #region Private Types // Used by the debugger display attribute internal class OneOfDebugDisplay { public OneOfDebugDisplay (SrgsOneOf oneOf) { _items = oneOf._items; } [DebuggerBrowsable (DebuggerBrowsableState.RootHidden)] public SrgsItem [] AKeys { get { SrgsItem [] items = new SrgsItem [_items.Count]; for (int i = 0; i < _items.Count; i++) { items [i] = _items [i]; } return items; } } private Collection _items; } #endregion } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WindowsComboBox.cs
- WasAdminWrapper.cs
- FolderBrowserDialog.cs
- TextViewSelectionProcessor.cs
- KnownBoxes.cs
- Empty.cs
- DeviceContext2.cs
- BidOverLoads.cs
- dsa.cs
- LinkLabelLinkClickedEvent.cs
- FigureParagraph.cs
- GridItemProviderWrapper.cs
- DbXmlEnabledProviderManifest.cs
- Internal.cs
- SelectionManager.cs
- MatrixValueSerializer.cs
- StackOverflowException.cs
- DataGridViewRowStateChangedEventArgs.cs
- DataSourceXmlAttributeAttribute.cs
- DWriteFactory.cs
- SourceFileInfo.cs
- HtmlInputImage.cs
- AnnotationResource.cs
- EventSinkHelperWriter.cs
- SchemaMerger.cs
- EventSinkHelperWriter.cs
- OrderedDictionary.cs
- SchemaImporter.cs
- Crypto.cs
- BitmapEncoder.cs
- LongCountAggregationOperator.cs
- AutomationPeer.cs
- ParseNumbers.cs
- PresentationTraceSources.cs
- StructuredTypeEmitter.cs
- _HTTPDateParse.cs
- WebPartExportVerb.cs
- URIFormatException.cs
- CustomValidator.cs
- DocumentReferenceCollection.cs
- ToolStripSplitButton.cs
- WebBrowsableAttribute.cs
- BrowserTree.cs
- MonitoringDescriptionAttribute.cs
- OdbcError.cs
- ColumnMap.cs
- NodeFunctions.cs
- COSERVERINFO.cs
- SqlFacetAttribute.cs
- PrintingPermission.cs
- ProtocolsConfigurationEntry.cs
- ActiveDocumentEvent.cs
- RegexGroupCollection.cs
- WorkflowApplicationAbortedException.cs
- MappingSource.cs
- EntityClassGenerator.cs
- TextElementEditingBehaviorAttribute.cs
- RoutedEventConverter.cs
- ObjectStateEntryBaseUpdatableDataRecord.cs
- SQLBinaryStorage.cs
- ContentElementAutomationPeer.cs
- XhtmlBasicLinkAdapter.cs
- LicFileLicenseProvider.cs
- SqlRetyper.cs
- ServiceHttpModule.cs
- FrameworkElement.cs
- MouseButton.cs
- XPathItem.cs
- TextEmbeddedObject.cs
- DataGridViewColumnHeaderCell.cs
- DocumentViewerConstants.cs
- SqlCharStream.cs
- SerializationInfo.cs
- BuildManagerHost.cs
- SelectedCellsChangedEventArgs.cs
- WindowAutomationPeer.cs
- DataRowExtensions.cs
- DescendentsWalkerBase.cs
- QilChoice.cs
- FilePresentation.cs
- StatusBarPanel.cs
- ListItem.cs
- DataTemplateKey.cs
- DescendantQuery.cs
- HttpCacheVaryByContentEncodings.cs
- FileRegion.cs
- WorkBatch.cs
- SpecialFolderEnumConverter.cs
- MouseCaptureWithinProperty.cs
- WorkerRequest.cs
- FormsAuthenticationCredentials.cs
- Visual3D.cs
- TrustLevel.cs
- HtmlTableRow.cs
- PromptStyle.cs
- Environment.cs
- EditorZoneBase.cs
- CodeAttributeDeclarationCollection.cs
- CodeTypeDeclarationCollection.cs
- RuntimeArgumentHandle.cs