Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / whidbey / NetFxQFE / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / UseAttributeSetsAction.cs / 1 / UseAttributeSetsAction.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 UseAttributeSetsAction : CompiledAction { private XmlQualifiedName[] useAttributeSets; private string useString; private const int ProcessingSets = 2; internal XmlQualifiedName[] UsedSets { get { return this.useAttributeSets; } } internal override void Compile(Compiler compiler) { Debug.Assert(Keywords.Equals(compiler.Input.LocalName, compiler.Atoms.UseAttributeSets)); this.useString = compiler.Input.Value; Debug.Assert(this.useAttributeSets == null); if (this.useString.Length == 0) { // Split creates empty node is spliting empty string this.useAttributeSets = new XmlQualifiedName[0]; return; } string[] qnames = XmlConvert.SplitString(this.useString); try { this.useAttributeSets = new XmlQualifiedName[qnames.Length]; { for (int i = 0; i < qnames.Length; i++) { this.useAttributeSets[i] = compiler.CreateXPathQName(qnames[i]); } } } catch (XsltException) { if (!compiler.ForwardCompatibility) { // Rethrow the exception if we're not in forwards-compatible mode throw; } // Ignore the whole list in forwards-compatible mode this.useAttributeSets = new XmlQualifiedName[0]; } } internal override void Execute(Processor processor, ActionFrame frame) { switch(frame.State) { case Initialized: frame.Counter = 0; frame.State = ProcessingSets; goto case ProcessingSets; case ProcessingSets: if (frame.Counter < this.useAttributeSets.Length) { AttributeSetAction action = processor.RootAction.GetAttributeSet(this.useAttributeSets[frame.Counter]); frame.IncrementCounter(); processor.PushActionFrame(action, frame.NodeSet); } else { frame.Finished(); } break; default: Debug.Fail("Invalid Container action execution state"); break; } } } } // 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 UseAttributeSetsAction : CompiledAction { private XmlQualifiedName[] useAttributeSets; private string useString; private const int ProcessingSets = 2; internal XmlQualifiedName[] UsedSets { get { return this.useAttributeSets; } } internal override void Compile(Compiler compiler) { Debug.Assert(Keywords.Equals(compiler.Input.LocalName, compiler.Atoms.UseAttributeSets)); this.useString = compiler.Input.Value; Debug.Assert(this.useAttributeSets == null); if (this.useString.Length == 0) { // Split creates empty node is spliting empty string this.useAttributeSets = new XmlQualifiedName[0]; return; } string[] qnames = XmlConvert.SplitString(this.useString); try { this.useAttributeSets = new XmlQualifiedName[qnames.Length]; { for (int i = 0; i < qnames.Length; i++) { this.useAttributeSets[i] = compiler.CreateXPathQName(qnames[i]); } } } catch (XsltException) { if (!compiler.ForwardCompatibility) { // Rethrow the exception if we're not in forwards-compatible mode throw; } // Ignore the whole list in forwards-compatible mode this.useAttributeSets = new XmlQualifiedName[0]; } } internal override void Execute(Processor processor, ActionFrame frame) { switch(frame.State) { case Initialized: frame.Counter = 0; frame.State = ProcessingSets; goto case ProcessingSets; case ProcessingSets: if (frame.Counter < this.useAttributeSets.Length) { AttributeSetAction action = processor.RootAction.GetAttributeSet(this.useAttributeSets[frame.Counter]); frame.IncrementCounter(); processor.PushActionFrame(action, frame.NodeSet); } else { frame.Finished(); } break; default: Debug.Fail("Invalid Container action execution state"); break; } } } } // 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
- ProfilePropertySettings.cs
- FocusChangedEventArgs.cs
- ConstructorNeedsTagAttribute.cs
- BrowserTree.cs
- ConnectionsZone.cs
- Point3DAnimation.cs
- PageVisual.cs
- StatusBarPanel.cs
- TextDecorationCollection.cs
- MultiBinding.cs
- QilInvokeEarlyBound.cs
- DbLambda.cs
- SqlUdtInfo.cs
- ErrorFormatter.cs
- SafeThreadHandle.cs
- ToggleButtonAutomationPeer.cs
- StylusDownEventArgs.cs
- RootProfilePropertySettingsCollection.cs
- DbConnectionPoolIdentity.cs
- Logging.cs
- SrgsNameValueTag.cs
- EditCommandColumn.cs
- SiteMapPath.cs
- HttpRequestCacheValidator.cs
- WinEventTracker.cs
- CompModSwitches.cs
- DbInsertCommandTree.cs
- QilBinary.cs
- WebPartVerbCollection.cs
- BaseAddressPrefixFilterElementCollection.cs
- WindowsEditBoxRange.cs
- OracleTimeSpan.cs
- HttpRequestTraceRecord.cs
- FontEmbeddingManager.cs
- UnsafeNativeMethods.cs
- SevenBitStream.cs
- BamlReader.cs
- XsltArgumentList.cs
- ExpandSegment.cs
- XmlObjectSerializerContext.cs
- BmpBitmapEncoder.cs
- ToolStripItemTextRenderEventArgs.cs
- PauseStoryboard.cs
- SafeProcessHandle.cs
- TypeReference.cs
- UrlMapping.cs
- ItemsPanelTemplate.cs
- DataControlLinkButton.cs
- XPathNavigatorReader.cs
- Model3D.cs
- OwnerDrawPropertyBag.cs
- MultipleCopiesCollection.cs
- MatrixTransform.cs
- DataObjectPastingEventArgs.cs
- AttachedProperty.cs
- MimeParameterWriter.cs
- TextSearch.cs
- VisualTreeUtils.cs
- SqlTrackingWorkflowInstance.cs
- Stylesheet.cs
- FileIOPermission.cs
- DesignSurfaceServiceContainer.cs
- Attachment.cs
- Vector.cs
- Axis.cs
- ScaleTransform.cs
- C14NUtil.cs
- CompensatableTransactionScopeActivity.cs
- TableItemProviderWrapper.cs
- HideDisabledControlAdapter.cs
- TypeHelpers.cs
- VirtualizingPanel.cs
- EntityModelSchemaGenerator.cs
- IndentTextWriter.cs
- Assembly.cs
- LocalizableAttribute.cs
- InputScopeAttribute.cs
- DataSet.cs
- documentsequencetextcontainer.cs
- XmlLoader.cs
- WSSecurityOneDotOneSendSecurityHeader.cs
- UiaCoreApi.cs
- ValidatorCollection.cs
- PeerNameResolver.cs
- DesignerActionGlyph.cs
- FormsIdentity.cs
- InkCollectionBehavior.cs
- FragmentNavigationEventArgs.cs
- FilterFactory.cs
- XmlSchemaObjectCollection.cs
- StrongNameUtility.cs
- PageAsyncTaskManager.cs
- FrugalList.cs
- _CookieModule.cs
- WebPartMinimizeVerb.cs
- Monitor.cs
- Wildcard.cs
- DocumentGrid.cs
- SHA1CryptoServiceProvider.cs
- TableRowGroup.cs