82 references to XPathAxis
System.Private.Xml (82)
System\Xml\Xsl\XPath\IXpathBuilder.cs (1)
26Node Axis(XPathAxis xpathAxis, XPathNodeType nodeType, string? prefix, string? name);
System\Xml\Xsl\XPath\XPathBuilder.cs (22)
320public static XmlNodeKindFlags AxisTypeMask(XmlNodeKindFlags inputTypeMask, XPathNodeType nodeType, XPathAxis xpathAxis) 328private QilNode BuildAxisFilter(QilNode qilAxis, XPathAxis xpathAxis, XPathNodeType nodeType, string? name, string? nsUri) 390private QilNode BuildAxis(XPathAxis xpathAxis, XPathNodeType nodeType, string? nsUri, string? name) 397case XPathAxis.Ancestor: qilAxis = _f.Ancestor(currentNode); break; 398case XPathAxis.AncestorOrSelf: qilAxis = _f.AncestorOrSelf(currentNode); break; 399case XPathAxis.Attribute: qilAxis = _f.Content(currentNode); break; 400case XPathAxis.Child: qilAxis = _f.Content(currentNode); break; 401case XPathAxis.Descendant: qilAxis = _f.Descendant(currentNode); break; 402case XPathAxis.DescendantOrSelf: qilAxis = _f.DescendantOrSelf(currentNode); break; 403case XPathAxis.Following: qilAxis = _f.XPathFollowing(currentNode); break; 404case XPathAxis.FollowingSibling: qilAxis = _f.FollowingSibling(currentNode); break; 405case XPathAxis.Namespace: qilAxis = _f.XPathNamespace(currentNode); break; 406case XPathAxis.Parent: qilAxis = _f.Parent(currentNode); break; 407case XPathAxis.Preceding: qilAxis = _f.XPathPreceding(currentNode); break; 408case XPathAxis.PrecedingSibling: qilAxis = _f.PrecedingSibling(currentNode); break; 409case XPathAxis.Self: qilAxis = (currentNode); break; 411case XPathAxis.Root: return _f.Root(currentNode); 420xpathAxis == XPathAxis.Ancestor || xpathAxis == XPathAxis.Preceding || 421xpathAxis == XPathAxis.AncestorOrSelf || xpathAxis == XPathAxis.PrecedingSibling 432public virtual QilNode Axis(XPathAxis xpathAxis, XPathNodeType nodeType, string? prefix, string? name)
System\Xml\Xsl\XPath\XPathParser.cs (20)
86Node opnd = _builder!.Axis(XPathAxis.Root, XPathNodeType.All, null, null); 98_builder.Axis(XPathAxis.Root, XPathNodeType.All, null, null), 100_builder.Axis(XPathAxis.DescendantOrSelf, XPathNodeType.All, null, null), 137_builder.Axis(XPathAxis.DescendantOrSelf, XPathNodeType.All, null, null), 155opnd = _builder!.Axis(XPathAxis.Self, XPathNodeType.All, null, null); 164opnd = _builder!.Axis(XPathAxis.Parent, XPathNodeType.All, null, null); 172XPathAxis axis; 181axis = XPathAxis.Attribute; 187axis = XPathAxis.Child; 203private static bool IsReverseAxis(XPathAxis axis) 206axis == XPathAxis.Ancestor || axis == XPathAxis.Preceding || 207axis == XPathAxis.AncestorOrSelf || axis == XPathAxis.PrecedingSibling 215private Node ParseNodeTest(XPathAxis axis) 238private static XPathNodeType PrincipalNodeType(XPathAxis axis) 241axis == XPathAxis.Attribute ? XPathNodeType.Attribute : 242axis == XPathAxis.Namespace ? XPathNodeType.Namespace : 247internal static void InternalParseNodeTest(XPathScanner scanner, XPathAxis axis, out XPathNodeType nodeType, out string? nodePrefix, out string? nodeName) 461_builder.Axis(XPathAxis.DescendantOrSelf, XPathNodeType.All, null, null),
System\Xml\Xsl\XPath\XPathScanner.cs (19)
72private XPathAxis _axis; 172public XPathAxis Axis 177Debug.Assert(_axis != XPathAxis.Unknown); 341_axis = XPathAxis.Unknown; 461private XPathAxis CheckAxis() 466case "ancestor": return XPathAxis.Ancestor; 467case "ancestor-or-self": return XPathAxis.AncestorOrSelf; 468case "attribute": return XPathAxis.Attribute; 469case "child": return XPathAxis.Child; 470case "descendant": return XPathAxis.Descendant; 471case "descendant-or-self": return XPathAxis.DescendantOrSelf; 472case "following": return XPathAxis.Following; 473case "following-sibling": return XPathAxis.FollowingSibling; 474case "namespace": return XPathAxis.Namespace; 475case "parent": return XPathAxis.Parent; 476case "preceding": return XPathAxis.Preceding; 477case "preceding-sibling": return XPathAxis.PrecedingSibling; 478case "self": return XPathAxis.Self; 479default: _kind = LexKind.Name; return XPathAxis.Unknown;
System\Xml\Xsl\Xslt\XPathPatternBuilder.cs (8)
97private static QilLoop BuildAxisFilter(QilPatternFactory f, QilIterator itr, XPathAxis xpathAxis, XPathNodeType nodeType, string? name, string? nsUri) 120public QilNode Axis(XPathAxis xpathAxis, XPathNodeType nodeType, string? prefix, string? name) 123xpathAxis == XPathAxis.Child || 124xpathAxis == XPathAxis.Attribute || 125xpathAxis == XPathAxis.DescendantOrSelf || 126xpathAxis == XPathAxis.Root 132case XPathAxis.DescendantOrSelf: 135case XPathAxis.Root:
System\Xml\Xsl\Xslt\XPathPatternParser.cs (10)
75opnd = _ptrnBuilder!.Axis(XPathAxis.Root, XPathNodeType.All, null, null); 85_ptrnBuilder.Axis(XPathAxis.Root, XPathNodeType.All, null, null), 87_ptrnBuilder.Axis(XPathAxis.DescendantOrSelf, XPathNodeType.All, null, null), 105_ptrnBuilder.Axis(XPathAxis.DescendantOrSelf, XPathNodeType.All, null, null), 181_ptrnBuilder.Axis(XPathAxis.DescendantOrSelf, XPathNodeType.All, null, null), 197XPathAxis axis; 205axis = XPathAxis.Attribute; 210if (axis != XPathAxis.Child && axis != XPathAxis.Attribute) 220axis = XPathAxis.Child;
System\Xml\Xsl\Xslt\XslAstAnalyzer.cs (2)
1019public XslFlags Axis(XPathAxis xpathAxis, XPathNodeType nodeType, string? prefix, string? name) 1022if (xpathAxis == XPathAxis.Self && nodeType == XPathNodeType.All && prefix == null && name == null)