Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / CopyCodeAction.cs / 1305376 / CopyCodeAction.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Xsl.XsltOld { using Res = System.Xml.Utils.Res; using System; using System.Diagnostics; using System.Xml; using System.Xml.XPath; using System.Collections; internal class CopyCodeAction : Action { // Execution states: private const int Outputting = 2; private ArrayList copyEvents; // Copy code action events internal CopyCodeAction() { this.copyEvents = new ArrayList(); } internal void AddEvent(Event copyEvent) { this.copyEvents.Add(copyEvent); } internal void AddEvents(ArrayList copyEvents) { Debug.Assert(copyEvents != null); this.copyEvents.AddRange(copyEvents); } internal override void ReplaceNamespaceAlias(Compiler compiler) { int count = this.copyEvents.Count; for(int i = 0; i< count; i++) { ((Event) this.copyEvents[i]).ReplaceNamespaceAlias(compiler); } } internal override void Execute(Processor processor, ActionFrame frame) { Debug.Assert(processor != null && frame != null); Debug.Assert(this.copyEvents != null && this.copyEvents.Count > 0); switch (frame.State) { case Initialized: frame.Counter = 0; frame.State = Outputting; goto case Outputting; case Outputting: Debug.Assert(frame.State == Outputting); while (processor.CanContinue) { Debug.Assert(frame.Counter < this.copyEvents.Count); Event copyEvent = (Event) this.copyEvents[frame.Counter]; if (copyEvent.Output(processor, frame) == false) { // This event wasn't processed break; } if (frame.IncrementCounter() >= this.copyEvents.Count) { frame.Finished(); break; } } break; default: Debug.Fail("Invalid CopyCodeAction execution state"); break; } } internal override DbgData GetDbgData(ActionFrame frame) { Debug.Assert(frame.Counter < this.copyEvents.Count); return ((Event)this.copyEvents[frame.Counter]).DbgData; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //[....] //----------------------------------------------------------------------------- namespace System.Xml.Xsl.XsltOld { using Res = System.Xml.Utils.Res; using System; using System.Diagnostics; using System.Xml; using System.Xml.XPath; using System.Collections; internal class CopyCodeAction : Action { // Execution states: private const int Outputting = 2; private ArrayList copyEvents; // Copy code action events internal CopyCodeAction() { this.copyEvents = new ArrayList(); } internal void AddEvent(Event copyEvent) { this.copyEvents.Add(copyEvent); } internal void AddEvents(ArrayList copyEvents) { Debug.Assert(copyEvents != null); this.copyEvents.AddRange(copyEvents); } internal override void ReplaceNamespaceAlias(Compiler compiler) { int count = this.copyEvents.Count; for(int i = 0; i< count; i++) { ((Event) this.copyEvents[i]).ReplaceNamespaceAlias(compiler); } } internal override void Execute(Processor processor, ActionFrame frame) { Debug.Assert(processor != null && frame != null); Debug.Assert(this.copyEvents != null && this.copyEvents.Count > 0); switch (frame.State) { case Initialized: frame.Counter = 0; frame.State = Outputting; goto case Outputting; case Outputting: Debug.Assert(frame.State == Outputting); while (processor.CanContinue) { Debug.Assert(frame.Counter < this.copyEvents.Count); Event copyEvent = (Event) this.copyEvents[frame.Counter]; if (copyEvent.Output(processor, frame) == false) { // This event wasn't processed break; } if (frame.IncrementCounter() >= this.copyEvents.Count) { frame.Finished(); break; } } break; default: Debug.Fail("Invalid CopyCodeAction execution state"); break; } } internal override DbgData GetDbgData(ActionFrame frame) { Debug.Assert(frame.Counter < this.copyEvents.Count); return ((Event)this.copyEvents[frame.Counter]).DbgData; } } } // 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
- FixedSOMFixedBlock.cs
- SemaphoreSecurity.cs
- ImageAnimator.cs
- TypePresenter.xaml.cs
- UnsafeNativeMethods.cs
- MonikerUtility.cs
- ClientEventManager.cs
- ObjectQuery.cs
- CharEntityEncoderFallback.cs
- IndicFontClient.cs
- LayoutDump.cs
- SafeFileMappingHandle.cs
- CodeCastExpression.cs
- XmlSchemaProviderAttribute.cs
- EventsTab.cs
- ServiceHostFactory.cs
- TreeViewImageKeyConverter.cs
- DataGridParentRows.cs
- DbFunctionCommandTree.cs
- RegexWorker.cs
- OrderPreservingMergeHelper.cs
- Decimal.cs
- validationstate.cs
- SqlFormatter.cs
- UInt16Storage.cs
- RoamingStoreFile.cs
- MsmqHostedTransportManager.cs
- XmlAggregates.cs
- BlurBitmapEffect.cs
- WorkflowLayouts.cs
- BitSet.cs
- GeometryGroup.cs
- DataGridParentRows.cs
- LineUtil.cs
- FacetDescription.cs
- ActivitySurrogate.cs
- OrderingInfo.cs
- HatchBrush.cs
- ProfileBuildProvider.cs
- BaseCodeDomTreeGenerator.cs
- ScrollProviderWrapper.cs
- PropertyTabChangedEvent.cs
- DiscoveryVersionConverter.cs
- XmlSiteMapProvider.cs
- XmlSchemaSet.cs
- GlobalAllocSafeHandle.cs
- UInt16Storage.cs
- DiagnosticTrace.cs
- ContainerAction.cs
- BCLDebug.cs
- DbProviderFactories.cs
- XmlValidatingReaderImpl.cs
- SqlTriggerAttribute.cs
- ImmutableCommunicationTimeouts.cs
- LassoSelectionBehavior.cs
- SchemaNotation.cs
- IxmlLineInfo.cs
- XsltInput.cs
- ParenthesizePropertyNameAttribute.cs
- BamlBinaryReader.cs
- InputLangChangeRequestEvent.cs
- CodeNamespaceImportCollection.cs
- GlyphingCache.cs
- WorkflowDefinitionContext.cs
- ImpersonationContext.cs
- FileLogRecordStream.cs
- FullTextState.cs
- AnnotationDocumentPaginator.cs
- PropertyMappingExceptionEventArgs.cs
- LicenseException.cs
- BinaryFormatter.cs
- Point3DKeyFrameCollection.cs
- DataQuery.cs
- XslAst.cs
- FlowchartDesignerCommands.cs
- InterleavedZipPartStream.cs
- ListenerHandler.cs
- HeaderedItemsControl.cs
- VBIdentifierName.cs
- IDataContractSurrogate.cs
- ToolBarButton.cs
- SingleObjectCollection.cs
- TaskSchedulerException.cs
- DTCTransactionManager.cs
- CustomCredentialPolicy.cs
- SizeAnimationBase.cs
- SafeThreadHandle.cs
- InvalidPrinterException.cs
- BuildProvider.cs
- EventSetterHandlerConverter.cs
- EvidenceBase.cs
- ValueUnavailableException.cs
- NavigationService.cs
- AttachedPropertyBrowsableForTypeAttribute.cs
- UTF32Encoding.cs
- ImmutableObjectAttribute.cs
- BitmapMetadataEnumerator.cs
- SystemShuttingDownException.cs
- QuotedPrintableStream.cs
- DataGridViewMethods.cs