Code:
/ 4.0 / 4.0 / untmp / 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.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SwitchElementsCollection.cs
- TreeNodeEventArgs.cs
- AssemblyResourceLoader.cs
- ScrollItemPattern.cs
- LicenseException.cs
- ToolStripSystemRenderer.cs
- ScrollContentPresenter.cs
- DesignSurfaceCollection.cs
- WebPartZone.cs
- StrongNameKeyPair.cs
- WindowsPrincipal.cs
- nulltextnavigator.cs
- BitmapScalingModeValidation.cs
- FixedHyperLink.cs
- Evidence.cs
- Win32Native.cs
- ContextMenuService.cs
- SqlProviderServices.cs
- DelegateInArgument.cs
- CryptoConfig.cs
- InheritanceContextChangedEventManager.cs
- RijndaelManagedTransform.cs
- PropertyChangedEventManager.cs
- ModifierKeysConverter.cs
- BinaryVersion.cs
- PointLight.cs
- NamespaceInfo.cs
- OledbConnectionStringbuilder.cs
- ExceptionRoutedEventArgs.cs
- Point3DCollection.cs
- StrokeCollectionConverter.cs
- Version.cs
- CancelEventArgs.cs
- DocumentPageHost.cs
- LinkLabel.cs
- ServiceBusyException.cs
- PixelFormats.cs
- Config.cs
- AssertSection.cs
- RequestResponse.cs
- SingleAnimation.cs
- OrderedEnumerableRowCollection.cs
- ApplicationServiceHelper.cs
- CompilerScopeManager.cs
- Comparer.cs
- XmlText.cs
- ListBindableAttribute.cs
- ReachSerializer.cs
- UInt16Converter.cs
- ArraySortHelper.cs
- CoreSwitches.cs
- InvalidOperationException.cs
- ViewCellSlot.cs
- SolidColorBrush.cs
- MappingException.cs
- PartBasedPackageProperties.cs
- EmptyEnumerator.cs
- ManipulationStartingEventArgs.cs
- Condition.cs
- EtwProvider.cs
- SqlTriggerContext.cs
- ChangeProcessor.cs
- SQLInt16.cs
- BitmapMetadataEnumerator.cs
- SymmetricCryptoHandle.cs
- SafeLibraryHandle.cs
- ToolBarButton.cs
- MsmqInputChannelBase.cs
- LinqDataSourceDisposeEventArgs.cs
- Token.cs
- CommonProperties.cs
- SmtpNegotiateAuthenticationModule.cs
- QueryUtil.cs
- sqlmetadatafactory.cs
- FilteredReadOnlyMetadataCollection.cs
- Matrix3DStack.cs
- QuarticEase.cs
- GC.cs
- Policy.cs
- TableCell.cs
- SqlRowUpdatingEvent.cs
- ReflectionHelper.cs
- ItemCollection.cs
- ProcessHostFactoryHelper.cs
- MulticastNotSupportedException.cs
- ParameterDataSourceExpression.cs
- WindowsPen.cs
- HttpRequestTraceRecord.cs
- MsmqIntegrationAppDomainProtocolHandler.cs
- XPathNodeInfoAtom.cs
- WsatProxy.cs
- wmiutil.cs
- WebEventCodes.cs
- DesignerWithHeader.cs
- TextParagraphCache.cs
- TextBoxAutomationPeer.cs
- InternalCache.cs
- ParallelDesigner.cs
- FlowDocumentFormatter.cs
- ColorConvertedBitmap.cs