Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / 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
- MessageBox.cs
- namescope.cs
- CodeGeneratorOptions.cs
- HttpSessionStateBase.cs
- InlineObject.cs
- TextParaLineResult.cs
- GeometryHitTestResult.cs
- Italic.cs
- ApplicationGesture.cs
- WSTrustFeb2005.cs
- HttpHeaderCollection.cs
- ModelEditingScope.cs
- EventLogConfiguration.cs
- httpstaticobjectscollection.cs
- FileDialogCustomPlace.cs
- StorageModelBuildProvider.cs
- WsdlImporterElementCollection.cs
- XmlSchemaComplexContentRestriction.cs
- LocatorGroup.cs
- ObjectViewQueryResultData.cs
- TypeLibConverter.cs
- IMembershipProvider.cs
- WaitingCursor.cs
- AudioException.cs
- RotateTransform.cs
- StrokeCollectionDefaultValueFactory.cs
- XmlSchemaExporter.cs
- KnownColorTable.cs
- Helpers.cs
- WebSysDisplayNameAttribute.cs
- LocalServiceSecuritySettings.cs
- codemethodreferenceexpression.cs
- ImageMapEventArgs.cs
- PartDesigner.cs
- ErrorRuntimeConfig.cs
- FocusChangedEventArgs.cs
- Types.cs
- PageAsyncTaskManager.cs
- ProfessionalColorTable.cs
- UntrustedRecipientException.cs
- Delegate.cs
- ProviderCollection.cs
- TableDetailsRow.cs
- CodeComment.cs
- AlphabeticalEnumConverter.cs
- ProviderCollection.cs
- PageParserFilter.cs
- FontSource.cs
- QilChoice.cs
- SrgsRule.cs
- Number.cs
- CodeGenerator.cs
- XPathCompileException.cs
- BlurBitmapEffect.cs
- BevelBitmapEffect.cs
- AffineTransform3D.cs
- ConstraintCollection.cs
- Int32Storage.cs
- EditorZoneDesigner.cs
- IteratorFilter.cs
- ActivityInstance.cs
- ClientOptions.cs
- AsyncSerializedWorker.cs
- PathFigure.cs
- WsrmFault.cs
- ChtmlTextWriter.cs
- ThicknessConverter.cs
- GeneralTransformCollection.cs
- KerberosSecurityTokenProvider.cs
- SqlUDTStorage.cs
- _TimerThread.cs
- AssociationSetEnd.cs
- ModuleElement.cs
- UIElement.cs
- Freezable.cs
- AlternateViewCollection.cs
- ApplicationFileCodeDomTreeGenerator.cs
- ConfigXmlDocument.cs
- SymbolPair.cs
- Misc.cs
- BindStream.cs
- ErrorFormatter.cs
- IdentifierElement.cs
- filewebrequest.cs
- ManagementOptions.cs
- InfoCardRSAPKCS1SignatureFormatter.cs
- _ProxyRegBlob.cs
- StreamGeometry.cs
- MetadataPropertyAttribute.cs
- ListSourceHelper.cs
- PageSettings.cs
- returneventsaver.cs
- ClientTargetSection.cs
- SortedDictionary.cs
- DataGridViewHeaderCell.cs
- _FtpControlStream.cs
- UnionQueryOperator.cs
- CallbackHandler.cs
- Hashtable.cs
- XmlBindingWorker.cs