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
- ResourceIDHelper.cs
- DataGridState.cs
- DataContext.cs
- TimeIntervalCollection.cs
- VersionUtil.cs
- TypeNameConverter.cs
- XamlSerializerUtil.cs
- MsmqOutputChannel.cs
- ConfigXmlCDataSection.cs
- AuthenticatingEventArgs.cs
- IndexingContentUnit.cs
- ValueChangedEventManager.cs
- TextWriter.cs
- ClosableStream.cs
- MimeAnyImporter.cs
- CatalogPartCollection.cs
- ServiceProviders.cs
- SqlDataReader.cs
- UpDownBaseDesigner.cs
- RotateTransform.cs
- DataBinder.cs
- RouteItem.cs
- SqlDelegatedTransaction.cs
- ThreadStartException.cs
- Point3DAnimationUsingKeyFrames.cs
- ModelItemExtensions.cs
- SafeNativeMethods.cs
- PropertyInfoSet.cs
- HtmlPhoneCallAdapter.cs
- BridgeDataReader.cs
- ComEventsHelper.cs
- DataGridRow.cs
- DataGridViewButtonCell.cs
- QueryOutputWriter.cs
- Paragraph.cs
- AxisAngleRotation3D.cs
- WebHttpSecurityModeHelper.cs
- SafeUserTokenHandle.cs
- ClientConfigPaths.cs
- PrimitiveType.cs
- CreateUserErrorEventArgs.cs
- ServiceModelInstallComponent.cs
- ModifierKeysValueSerializer.cs
- Size.cs
- ZoneLinkButton.cs
- TemplateBamlRecordReader.cs
- EventLogHandle.cs
- UITypeEditors.cs
- ObjectManager.cs
- IconConverter.cs
- Event.cs
- JsonSerializer.cs
- EventListener.cs
- Currency.cs
- GlyphShapingProperties.cs
- SQLMembershipProvider.cs
- HtmlInputPassword.cs
- DocumentDesigner.cs
- Gdiplus.cs
- DockingAttribute.cs
- LexicalChunk.cs
- ToolStripMenuItem.cs
- SearchForVirtualItemEventArgs.cs
- WebPartZone.cs
- ListViewTableRow.cs
- SqlParameterizer.cs
- FixedSOMLineCollection.cs
- OleDbStruct.cs
- GridProviderWrapper.cs
- DelegateSerializationHolder.cs
- CodeChecksumPragma.cs
- TemplateKeyConverter.cs
- DesignOnlyAttribute.cs
- SiteMembershipCondition.cs
- WorkflowIdleBehavior.cs
- FlatButtonAppearance.cs
- XPathItem.cs
- FormsAuthenticationEventArgs.cs
- ChannelAcceptor.cs
- XmlSchemaValidationException.cs
- FunctionNode.cs
- ResourceContainer.cs
- TileBrush.cs
- NativeCompoundFileAPIs.cs
- PenLineCapValidation.cs
- DbDataRecord.cs
- ReadOnlyDictionary.cs
- AttachedPropertiesService.cs
- NestedContainer.cs
- DataServiceStreamProviderWrapper.cs
- CqlGenerator.cs
- DataControlFieldTypeEditor.cs
- WebMessageFormatHelper.cs
- CodeTypeReference.cs
- AlignmentYValidation.cs
- URLIdentityPermission.cs
- Help.cs
- TraceShell.cs
- TabControl.cs
- InternalConfigHost.cs