System.Xml.Xsl.IlGen.XmlILOptimizerVisitor.VisitAncestorOrSelf C# (CSharp) Method

VisitAncestorOrSelf() protected method

protected VisitAncestorOrSelf ( QilUnary local0 ) : QilNode
local0 System.Xml.Xsl.Qil.QilUnary
return QilNode
        protected override QilNode VisitAncestorOrSelf(QilUnary local0) {
            QilNode local1 = local0[0];
            if (this[XmlILOptimization.FoldNone]) {
                if ( (object) ( (local1).XmlType ) == (object) XmlQueryTypeFactory.None ) {
                    if (AllowReplace(XmlILOptimization.FoldNone, local0)) {
                        return Replace(XmlILOptimization.FoldNone, local0, VisitNop(f.Nop(local1)));
                    }
                }
            }
            if (this[XmlILOptimization.AnnotateAncestorSelf]) {
                if (AllowReplace(XmlILOptimization.AnnotateAncestorSelf, local0)) {
                     OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis);  AddStepPattern((QilNode) (local0), (QilNode) (local1));  }
            }
            return NoReplace(local0);
        }
        
XmlILOptimizerVisitor