Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / CopyCodeAction.cs / 1 / 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
- GifBitmapDecoder.cs
- NullableConverter.cs
- HTMLTagNameToTypeMapper.cs
- DesignerImageAdapter.cs
- ObjectQuery_EntitySqlExtensions.cs
- FilterException.cs
- InsufficientExecutionStackException.cs
- BooleanAnimationBase.cs
- PerformanceCounterPermission.cs
- ItemDragEvent.cs
- HitTestWithPointDrawingContextWalker.cs
- SliderAutomationPeer.cs
- TableProviderWrapper.cs
- ReadOnlyTernaryTree.cs
- HttpStreamMessage.cs
- TypeLibConverter.cs
- SmiEventSink.cs
- DoWhile.cs
- EntityCommandCompilationException.cs
- MouseGestureValueSerializer.cs
- PropertyChangingEventArgs.cs
- CodeNamespace.cs
- MetabaseServerConfig.cs
- Size.cs
- ApplicationFileParser.cs
- TableStyle.cs
- ReadWriteSpinLock.cs
- Encoder.cs
- AppDomainManager.cs
- ByteStreamMessage.cs
- PasswordRecoveryAutoFormat.cs
- ColorMap.cs
- RawAppCommandInputReport.cs
- NotFiniteNumberException.cs
- InputScopeManager.cs
- webbrowsersite.cs
- SqlConnectionStringBuilder.cs
- BrowserCapabilitiesCompiler.cs
- ObjectDataSourceFilteringEventArgs.cs
- WebConfigurationManager.cs
- UInt64Converter.cs
- ModelTreeEnumerator.cs
- UrlRoutingModule.cs
- ToolStripItemTextRenderEventArgs.cs
- SafeLibraryHandle.cs
- XmlExpressionDumper.cs
- OletxDependentTransaction.cs
- ListQueryResults.cs
- PropertyTabChangedEvent.cs
- LocationReferenceValue.cs
- HScrollProperties.cs
- CharacterMetrics.cs
- OperationSelectorBehavior.cs
- ExtensionsSection.cs
- PolyBezierSegmentFigureLogic.cs
- Pool.cs
- PatternMatchRules.cs
- ObjectQueryExecutionPlan.cs
- TypeElementCollection.cs
- DataShape.cs
- BaseTransportHeaders.cs
- DoubleAnimationUsingPath.cs
- GroupedContextMenuStrip.cs
- Timeline.cs
- ScriptServiceAttribute.cs
- ObjectListGeneralPage.cs
- XPathChildIterator.cs
- ReadOnlyTernaryTree.cs
- DiscoveryClientDocuments.cs
- DbConnectionHelper.cs
- NullableDoubleSumAggregationOperator.cs
- ResourcePermissionBase.cs
- ScopeElement.cs
- HandleCollector.cs
- WebPartConnectVerb.cs
- DbMetaDataFactory.cs
- Section.cs
- XmlCustomFormatter.cs
- WebPartTransformerCollection.cs
- RotateTransform3D.cs
- Document.cs
- StackSpiller.Generated.cs
- ServicePoint.cs
- QueryContinueDragEvent.cs
- BitmapEditor.cs
- StructuredTypeEmitter.cs
- HostedHttpTransportManager.cs
- HtmlButton.cs
- AnimationException.cs
- ClientSideProviderDescription.cs
- WebPartDescription.cs
- ScrollViewer.cs
- DBPropSet.cs
- HeaderLabel.cs
- FixedMaxHeap.cs
- Suspend.cs
- ValueType.cs
- ISCIIEncoding.cs
- HyperLinkColumn.cs
- cookie.cs