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 / 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
- CryptoHelper.cs
- ListViewGroupItemCollection.cs
- SystemNetworkInterface.cs
- X509ChainElement.cs
- CompilerResults.cs
- SimpleBitVector32.cs
- BitmapData.cs
- DrawingVisualDrawingContext.cs
- XmlNodeList.cs
- OdbcReferenceCollection.cs
- ChannelBinding.cs
- StrongNamePublicKeyBlob.cs
- initElementDictionary.cs
- ProcessModelSection.cs
- ToolStripItemEventArgs.cs
- XamlToRtfParser.cs
- StateDesigner.CommentLayoutGlyph.cs
- UidManager.cs
- ChangeDirector.cs
- ContainerControl.cs
- EntityContainerRelationshipSetEnd.cs
- ArithmeticException.cs
- BitmapMetadataEnumerator.cs
- SafeThreadHandle.cs
- BackStopAuthenticationModule.cs
- CellNormalizer.cs
- DefaultAuthorizationContext.cs
- KeySpline.cs
- ClientRolePrincipal.cs
- ModifierKeysValueSerializer.cs
- ThemeDirectoryCompiler.cs
- SerializationObjectManager.cs
- RecommendedAsConfigurableAttribute.cs
- MemberMaps.cs
- ToolBarOverflowPanel.cs
- LineSegment.cs
- DispatchWrapper.cs
- DiscreteKeyFrames.cs
- VirtualDirectoryMappingCollection.cs
- MessageHeaderAttribute.cs
- MaskPropertyEditor.cs
- Light.cs
- LinqDataSourceDeleteEventArgs.cs
- ImportCatalogPart.cs
- _AutoWebProxyScriptHelper.cs
- SerializationSectionGroup.cs
- FileSystemInfo.cs
- CustomError.cs
- TableItemStyle.cs
- IPipelineRuntime.cs
- SecurityAccessDeniedException.cs
- ContentOnlyMessage.cs
- ObjectRef.cs
- StringUtil.cs
- EventHandlersStore.cs
- RequestUriProcessor.cs
- _ReceiveMessageOverlappedAsyncResult.cs
- ListViewItem.cs
- safelinkcollection.cs
- TypedReference.cs
- ValidatorCompatibilityHelper.cs
- Int32Converter.cs
- ChannelTerminatedException.cs
- WebEventTraceProvider.cs
- CustomTypeDescriptor.cs
- RefreshResponseInfo.cs
- FontWeightConverter.cs
- WindowAutomationPeer.cs
- TrackingMemoryStreamFactory.cs
- TransformerInfo.cs
- TransformPatternIdentifiers.cs
- initElementDictionary.cs
- TiffBitmapDecoder.cs
- DocumentReferenceCollection.cs
- SqlServer2KCompatibilityAnnotation.cs
- _HTTPDateParse.cs
- ApplicationDirectoryMembershipCondition.cs
- xamlnodes.cs
- MatcherBuilder.cs
- ComProxy.cs
- SnapLine.cs
- ModuleBuilderData.cs
- BigInt.cs
- KeyConstraint.cs
- QilLoop.cs
- HttpCookieCollection.cs
- WorkflowInvoker.cs
- SoapMessage.cs
- XmlC14NWriter.cs
- DataTableExtensions.cs
- ClientType.cs
- SqlLiftIndependentRowExpressions.cs
- ChangeInterceptorAttribute.cs
- DiagnosticStrings.cs
- BooleanConverter.cs
- ServiceMoniker.cs
- PackUriHelper.cs
- ChangePassword.cs
- TryCatch.cs
- EventSinkHelperWriter.cs