XslVisitor.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / XmlUtils / System / Xml / Xsl / Xslt / XslVisitor.cs / 1305376 / XslVisitor.cs

                            //------------------------------------------------------------------------------ 
// 
//     Copyright (c) Microsoft Corporation.  All rights reserved.
// 
// [....] 
//-----------------------------------------------------------------------------
 
namespace System.Xml.Xsl.Xslt { 

    internal abstract class XslVisitor { 
        protected virtual T Visit(XslNode node) {
            switch (node.NodeType) {
            case XslNodeType.ApplyImports      : return VisitApplyImports    ((XslNode)     node);
            case XslNodeType.ApplyTemplates    : return VisitApplyTemplates  ((XslNode)     node); 
            case XslNodeType.Attribute         : return VisitAttribute       ((NodeCtor)    node);
            case XslNodeType.AttributeSet      : return VisitAttributeSet    ((AttributeSet)node); 
            case XslNodeType.CallTemplate      : return VisitCallTemplate    ((XslNode)     node); 
            case XslNodeType.Choose            : return VisitChoose          ((XslNode)     node);
            case XslNodeType.Comment           : return VisitComment         ((XslNode)     node); 
            case XslNodeType.Copy              : return VisitCopy            ((XslNode)     node);
            case XslNodeType.CopyOf            : return VisitCopyOf          ((XslNode)     node);
            case XslNodeType.Element           : return VisitElement         ((NodeCtor)    node);
            case XslNodeType.Error             : return VisitError           ((XslNode)     node); 
            case XslNodeType.ForEach           : return VisitForEach         ((XslNode)     node);
            case XslNodeType.If                : return VisitIf              ((XslNode)     node); 
            case XslNodeType.Key               : return VisitKey             ((Key)         node); 
            case XslNodeType.List              : return VisitList            ((XslNode)     node);
            case XslNodeType.LiteralAttribute  : return VisitLiteralAttribute((XslNode)     node); 
            case XslNodeType.LiteralElement    : return VisitLiteralElement  ((XslNode)     node);
            case XslNodeType.Message           : return VisitMessage         ((XslNode)     node);
            case XslNodeType.Nop               : return VisitNop             ((XslNode)     node);
            case XslNodeType.Number            : return VisitNumber          ((Number)      node); 
            case XslNodeType.Otherwise         : return VisitOtherwise       ((XslNode)     node);
            case XslNodeType.Param             : return VisitParam           ((VarPar)      node); 
            case XslNodeType.PI                : return VisitPI              ((XslNode)     node); 
            case XslNodeType.Sort              : return VisitSort            ((Sort)        node);
            case XslNodeType.Template          : return VisitTemplate        ((Template)    node); 
            case XslNodeType.Text              : return VisitText            ((Text)        node);
            case XslNodeType.UseAttributeSet   : return VisitUseAttributeSet ((XslNode)     node);
            case XslNodeType.ValueOf           : return VisitValueOf         ((XslNode)     node);
            case XslNodeType.ValueOfDoe        : return VisitValueOfDoe      ((XslNode)     node); 
            case XslNodeType.Variable          : return VisitVariable        ((VarPar)      node);
            case XslNodeType.WithParam         : return VisitWithParam       ((VarPar)      node); 
            default                            : return VisitUnknown         ((XslNode)     node); 
            }
        } 

        protected virtual T VisitApplyImports    (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitApplyTemplates  (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitAttribute       (NodeCtor     node) { return VisitChildren( node ); } 
        protected virtual T VisitAttributeSet    (AttributeSet node) { return VisitChildren( node ); }
        protected virtual T VisitCallTemplate    (XslNode      node) { return VisitChildren( node ); } 
        protected virtual T VisitChoose          (XslNode      node) { return VisitChildren( node ); } 
        protected virtual T VisitComment         (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitCopy            (XslNode      node) { return VisitChildren( node ); } 
        protected virtual T VisitCopyOf          (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitElement         (NodeCtor     node) { return VisitChildren( node ); }
        protected virtual T VisitError           (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitForEach         (XslNode      node) { return VisitChildren( node ); } 
        protected virtual T VisitIf              (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitKey             (Key          node) { return VisitChildren( node ); } 
        protected virtual T VisitList            (XslNode      node) { return VisitChildren( node ); } 
        protected virtual T VisitLiteralAttribute(XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitLiteralElement  (XslNode      node) { return VisitChildren( node ); } 
        protected virtual T VisitMessage         (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitNop             (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitNumber          (Number       node) { return VisitChildren( node ); }
        protected virtual T VisitOtherwise       (XslNode      node) { return VisitChildren( node ); } 
        protected virtual T VisitParam           (VarPar       node) { return VisitChildren( node ); }
        protected virtual T VisitPI              (XslNode      node) { return VisitChildren( node ); } 
        protected virtual T VisitSort            (Sort         node) { return VisitChildren( node ); } 
        protected virtual T VisitTemplate        (Template     node) { return VisitChildren( node ); }
        protected virtual T VisitText            (Text         node) { return VisitChildren( node ); } 
        protected virtual T VisitUseAttributeSet (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitValueOf         (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitValueOfDoe      (XslNode      node) { return VisitChildren( node ); }
        protected virtual T VisitVariable        (VarPar       node) { return VisitChildren( node ); } 
        protected virtual T VisitWithParam       (VarPar       node) { return VisitChildren( node ); }
        protected virtual T VisitUnknown         (XslNode      node) { return VisitChildren( node ); } 
 
        protected virtual T VisitChildren(XslNode node) {
            foreach (XslNode child in node.Content) { 
                this.Visit(child);
            }
            return default(T);
        } 
    }
} 

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK