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
- Geometry3D.cs
- ServerTooBusyException.cs
- HtmlTable.cs
- DesignerCommandAdapter.cs
- reliableinputsessionchannel.cs
- mongolianshape.cs
- WindowInteropHelper.cs
- MutexSecurity.cs
- XmlException.cs
- ModelUIElement3D.cs
- MsmqIntegrationProcessProtocolHandler.cs
- ProvidersHelper.cs
- CryptoApi.cs
- TTSEngineTypes.cs
- ConstraintEnumerator.cs
- MemberAccessException.cs
- CookielessHelper.cs
- OperationCanceledException.cs
- LinqMaximalSubtreeNominator.cs
- IntellisenseTextBox.cs
- MatrixTransform3D.cs
- SBCSCodePageEncoding.cs
- _KerberosClient.cs
- ApplicationActivator.cs
- PersianCalendar.cs
- HeaderUtility.cs
- SecurityStateEncoder.cs
- CacheSection.cs
- HttpWebRequestElement.cs
- RegisterInfo.cs
- SequenceNumber.cs
- ValueChangedEventManager.cs
- FormViewDeleteEventArgs.cs
- TraceHelpers.cs
- ReflectEventDescriptor.cs
- SystemColorTracker.cs
- xdrvalidator.cs
- AQNBuilder.cs
- TimeoutValidationAttribute.cs
- DataControlCommands.cs
- RtType.cs
- HttpListener.cs
- WebPartConnectionsCloseVerb.cs
- SkipStoryboardToFill.cs
- NamedPipeTransportElement.cs
- ConfigurationSectionCollection.cs
- AmbientValueAttribute.cs
- IntegerValidator.cs
- RC2CryptoServiceProvider.cs
- WebPartDescription.cs
- SafeFileMappingHandle.cs
- MessageQuerySet.cs
- HitTestWithPointDrawingContextWalker.cs
- DataKeyArray.cs
- Collection.cs
- Matrix3D.cs
- CellParaClient.cs
- ScriptingScriptResourceHandlerSection.cs
- CompilerHelpers.cs
- TargetParameterCountException.cs
- TextDecorationLocationValidation.cs
- ButtonFieldBase.cs
- WebPartEventArgs.cs
- ProfileProvider.cs
- ByteKeyFrameCollection.cs
- figurelengthconverter.cs
- IApplicationTrustManager.cs
- OleDbParameter.cs
- TextRangeBase.cs
- ToolStripItem.cs
- PageThemeParser.cs
- Converter.cs
- ThicknessAnimationBase.cs
- SqlMethodTransformer.cs
- TransformGroup.cs
- Decoder.cs
- MetafileHeaderWmf.cs
- AdCreatedEventArgs.cs
- InkCanvasSelectionAdorner.cs
- NotifyInputEventArgs.cs
- TemplatedWizardStep.cs
- XmlWriterTraceListener.cs
- MailAddressCollection.cs
- QuotedStringWriteStateInfo.cs
- DeobfuscatingStream.cs
- InputBuffer.cs
- ManageRequest.cs
- Condition.cs
- StringToken.cs
- SqlBooleanMismatchVisitor.cs
- DocumentGridContextMenu.cs
- BlockCollection.cs
- EDesignUtil.cs
- WebBrowserContainer.cs
- Polygon.cs
- BitmapEffect.cs
- AdCreatedEventArgs.cs
- GridViewRowPresenter.cs
- _BasicClient.cs
- CompositeFontFamily.cs