Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / ndp / fx / src / XmlUtils / System / Xml / Xsl / XsltOld / TextAction.cs / 1 / TextAction.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; internal class TextAction : CompiledAction { private bool disableOutputEscaping; private string text; internal override void Compile(Compiler compiler) { CompileAttributes(compiler); CompileContent(compiler); } internal override bool CompileAttribute(Compiler compiler) { string name = compiler.Input.LocalName; string value = compiler.Input.Value; if (Keywords.Equals(name, compiler.Atoms.DisableOutputEscaping)) { this.disableOutputEscaping = compiler.GetYesNo(value); } else { return false; } return true; } private void CompileContent(Compiler compiler) { if (compiler.Recurse()) { NavigatorInput input = compiler.Input; this.text = string.Empty; do { switch (input.NodeType) { case XPathNodeType.Text: case XPathNodeType.Whitespace: case XPathNodeType.SignificantWhitespace: this.text += input.Value; break; case XPathNodeType.Comment: case XPathNodeType.ProcessingInstruction: break; default: throw compiler.UnexpectedKeyword(); } } while(compiler.Advance()); compiler.ToParent(); } } internal override void Execute(Processor processor, ActionFrame frame) { Debug.Assert(processor != null && frame != null); switch (frame.State) { case Initialized: if (processor.TextEvent(this.text, disableOutputEscaping)) { frame.Finished(); } break; default: Debug.Fail("Invalid execution state in TextAction"); 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; internal class TextAction : CompiledAction { private bool disableOutputEscaping; private string text; internal override void Compile(Compiler compiler) { CompileAttributes(compiler); CompileContent(compiler); } internal override bool CompileAttribute(Compiler compiler) { string name = compiler.Input.LocalName; string value = compiler.Input.Value; if (Keywords.Equals(name, compiler.Atoms.DisableOutputEscaping)) { this.disableOutputEscaping = compiler.GetYesNo(value); } else { return false; } return true; } private void CompileContent(Compiler compiler) { if (compiler.Recurse()) { NavigatorInput input = compiler.Input; this.text = string.Empty; do { switch (input.NodeType) { case XPathNodeType.Text: case XPathNodeType.Whitespace: case XPathNodeType.SignificantWhitespace: this.text += input.Value; break; case XPathNodeType.Comment: case XPathNodeType.ProcessingInstruction: break; default: throw compiler.UnexpectedKeyword(); } } while(compiler.Advance()); compiler.ToParent(); } } internal override void Execute(Processor processor, ActionFrame frame) { Debug.Assert(processor != null && frame != null); switch (frame.State) { case Initialized: if (processor.TextEvent(this.text, disableOutputEscaping)) { frame.Finished(); } break; default: Debug.Fail("Invalid execution state in TextAction"); 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
- SmiTypedGetterSetter.cs
- ReadOnlyMetadataCollection.cs
- RuntimeTransactionHandle.cs
- GiveFeedbackEventArgs.cs
- XmlName.cs
- Utility.cs
- BaseDataList.cs
- FunctionCommandText.cs
- ArrayConverter.cs
- AuthenticationSection.cs
- SqlDataReader.cs
- Int64AnimationUsingKeyFrames.cs
- DefinitionBase.cs
- CqlWriter.cs
- HostedHttpContext.cs
- EventManager.cs
- QilReference.cs
- CollectionConverter.cs
- WorkflowService.cs
- Aggregates.cs
- UserMapPath.cs
- BmpBitmapEncoder.cs
- coordinatorfactory.cs
- QilInvokeEarlyBound.cs
- SortedSetDebugView.cs
- BuilderInfo.cs
- WindowsRichEditRange.cs
- ObfuscateAssemblyAttribute.cs
- LookupBindingPropertiesAttribute.cs
- AsyncResult.cs
- RangeValidator.cs
- BitmapPalette.cs
- AssertFilter.cs
- ParameterInfo.cs
- PreProcessor.cs
- SymLanguageVendor.cs
- keycontainerpermission.cs
- ItemCollection.cs
- WSSecurityOneDotOneSendSecurityHeader.cs
- XmlExpressionDumper.cs
- wmiprovider.cs
- TextTreePropertyUndoUnit.cs
- HttpCookiesSection.cs
- LocalizationComments.cs
- ContextQuery.cs
- ListSortDescription.cs
- GregorianCalendar.cs
- DBSqlParserTable.cs
- ImageListStreamer.cs
- DataGridViewCellStyle.cs
- PrimitiveCodeDomSerializer.cs
- TemplatingOptionsDialog.cs
- FontWeightConverter.cs
- IconHelper.cs
- ServiceBuildProvider.cs
- MonthCalendar.cs
- Property.cs
- BitmapEffectDrawing.cs
- HttpHandlerActionCollection.cs
- AtomServiceDocumentSerializer.cs
- SrgsSubset.cs
- StackBuilderSink.cs
- StdRegProviderWrapper.cs
- PeerName.cs
- CodeCastExpression.cs
- CollectionViewProxy.cs
- CustomSignedXml.cs
- MultiView.cs
- ActivityWithResultConverter.cs
- BaseValidator.cs
- StreamWriter.cs
- EntityTypeEmitter.cs
- HeaderedItemsControl.cs
- ApplicationSecurityInfo.cs
- SecureUICommand.cs
- AllMembershipCondition.cs
- PrtCap_Public_Simple.cs
- PerformanceCountersElement.cs
- AudioLevelUpdatedEventArgs.cs
- DrawingAttributesDefaultValueFactory.cs
- DirectoryNotFoundException.cs
- ButtonAutomationPeer.cs
- activationcontext.cs
- CategoryGridEntry.cs
- StorageModelBuildProvider.cs
- RuleValidation.cs
- TargetConverter.cs
- SecureEnvironment.cs
- StringArrayConverter.cs
- XmlHierarchicalDataSourceView.cs
- TagElement.cs
- FatalException.cs
- DataViewSetting.cs
- UserControlParser.cs
- DataSvcMapFile.cs
- ClassHandlersStore.cs
- RootBuilder.cs
- ListViewGroup.cs
- UpdatePanel.cs
- CharacterBuffer.cs