45 references to Variable
System.Data.SqlXml (45)
System\Xml\Xsl\IlGen\TailCallAnalyzer.cs (2)
51if (ndLoop.Variable.NodeType == QilNodeType.Let || !ndLoop.Variable.Binding.XmlType.MaybeMany)
System\Xml\Xsl\IlGen\XmlIlVisitor.cs (14)
1730StartBinding(ndLoop.Variable); 1735EndBinding(ndLoop.Variable); 1750StartBinding(ndFilter.Variable); 1761EndBinding(ndFilter.Variable); 2097Debug.Assert(ndSort.Variable.NodeType == QilNodeType.For); 2116StartNestedIterator(ndSort.Variable, lblOnEndSort); 2117StartBinding(ndSort.Variable); 2122this.iterCurr.EnsureItemStorageType(ndSort.Variable.XmlType, GetItemStorageType(ndSort.Variable)); 2149EndBinding(ndSort.Variable); 2150EndNestedIterator(ndSort.Variable); 3711StartBinding(ndLoop.Variable); 3712EndBinding(ndLoop.Variable); 3713EndNestedIterator(ndLoop.Variable);
System\Xml\Xsl\QIL\QilScopedVisitor.cs (2)
57BeginScope(((QilLoop) node).Variable); 86EndScope(((QilLoop) node).Variable);
System\Xml\Xsl\QIL\QilTypeChecker.cs (10)
538Check(node.Variable.NodeType == QilNodeType.For || node.Variable.NodeType == QilNodeType.Let, node, "Loop variable must be a For or Let iterator"); 541XmlQueryCardinality variableCard = node.Variable.NodeType == QilNodeType.Let ? XmlQueryCardinality.One : node.Variable.Binding.XmlType.Cardinality; 549Check(node.Variable.NodeType == QilNodeType.For || node.Variable.NodeType == QilNodeType.Let, node, "Filter variable must be a For or Let iterator"); 553XmlQueryType filterType = FindFilterType(node.Variable, node.Body); 557return XmlQueryTypeFactory.AtMost(node.Variable.Binding.XmlType, node.Variable.Binding.XmlType.Cardinality); 567XmlQueryType varType = node.Variable.Binding.XmlType;
System\Xml\Xsl\Xslt\KeyMatchBuilder.cs (7)
89if (n.Variable.Binding.NodeType == QilNodeType.Root || n.Variable.Binding.NodeType == QilNodeType.Deref) { 93if (n.Variable.Binding.NodeType == QilNodeType.Content) { 95QilUnary content = (QilUnary)n.Variable.Binding; 99n.Variable.Binding = f.Loop(it, content); 102n.Variable.Binding = Visit(n.Variable.Binding);
System\Xml\Xsl\Xslt\MatcherBuilder.cs (1)
124this.iterator = filter.Variable;
System\Xml\Xsl\Xslt\QilGenerator.cs (1)
1536refReplacer.Replace(filter.Body, filter.Variable, testNode),
System\Xml\Xsl\Xslt\XPathPatternBuilder.cs (8)
51Debug.Assert(filter.Variable.XmlType.IsSubtypeOf(T.NodeNotRtf)); 52Debug.Assert(filter.Variable.Binding.NodeType == QilNodeType.Unknown); // fixupNode 58filter.Variable.Binding = newBinding; 195FixupFilterBinding(parentFilter, ancestor ? f.Ancestor(lastParent.Variable) : f.Parent(lastParent.Variable)); 219QilIterator current = nodeFilter.Variable; 237siblingFilter.Variable.Binding = sibling; 335Debug.Assert(context.Variable.NodeType == QilNodeType.For, "It shouldn't be Let, becaus predicates in PatternBuilder don't produce cached tuples.");