40 writes to Child0
System.Data.Entity (40)
System\Data\Query\PlanCompiler\ITreeGenerator.cs (1)
1442
inputNode.
Child0
= CreateLimitNode(inputNode.Child0, limitNode, expression.WithTies);
System\Data\Query\PlanCompiler\NestPullup.cs (13)
508
m_definingNodeMap[collectionInfo.CollectionVar].
Child0
= ApplyIsNotNullFilter(m_definingNodeMap[collectionInfo.CollectionVar].Child0, sentinelVar);
581
newFilterParent.
Child0
= newFilterNode;
679
n.
Child0
= nestOpInputNode;
680
nestOpNode.
Child0
= n;
824
n.
Child0
= sortNode.Child0;
826
sortNode.
Child0
= HandleProjectNode(n);
1457
projectNode.
Child0
= nestNode.Child0;
1485
projectNode.
Child0
= nestNode.Child0;
1486
nestNode.
Child0
= projectNode;
1535
n.
Child0
= newSingleRowOpNode;
1596
n.
Child0
= nestNode.Child0;
1597
nestNode.
Child0
= n;
1977
n.
Child0
= sortNode;
System\Data\Query\PlanCompiler\NominalTypeEliminator.cs (2)
1349
n.
Child0
= newChildren[0];
2020
resultNode.
Child0
= m_command.CreateNode(newCaseOp, children);
System\Data\Query\PlanCompiler\Normalizer.cs (2)
88
n.
Child0
= BuildDummyProjectForExists(n.Child0);
259
n.Child2.
Child0
= BuildDummyProjectForExists(n.Child2.Child0);
System\Data\Query\PlanCompiler\PreProcessor.cs (2)
2318
n.
Child0
= ret;
2360
n.
Child0
= n.Child0.Child0;
System\Data\Query\PlanCompiler\ProjectionPruner.cs (3)
445
n.
Child0
= VisitNode(n.Child0); // visit the child
606
n.
Child0
= VisitNode(n.Child0);
721
n.
Child0
= VisitNode(n.Child0);
System\Data\Query\PlanCompiler\SubqueryTrackingVisitor.cs (1)
213
n.
Child0
= newInputNode;
System\Data\Query\PlanCompiler\TransformationRules.cs (16)
2054
n.
Child0
= singleRowTableNode;
2060
projectNode.
Child0
= n;
2143
varDefNode.
Child0
= trc.ReMap(varDefNode.Child0, varMap);
2163
projectNode.
Child0
= subProjectNode.Child0;
2369
varDefNode.
Child0
= command.CreateNode(varRefOp);
2570
varDefNode.
Child0
= context.Command.CreateNode(context.Command.CreateVarRefOp(sentinelVar));
2574
varDefNode.
Child0
= trc.BuildNullIfExpression(sentinelVar, varDefNode.Child0);
2596
projectNode.
Child0
= filterInputNode;
2609
projectNode.
Child0
= joinNode;
2655
projectNode.
Child0
= applyNode;
2773
varDefNode.
Child0
= currentDefinition;
2795
projectNode.
Child0
= applyNode;
3757
singleRowNode.
Child0
= projectNodeInput;
3759
projectNode.
Child0
= singleRowNode;
4036
newNode.
Child0
= projectNode.Child0;
4313
n.
Child0
= filter;
390 references to Child0
System.Data.Entity (390)
System\Data\Mapping\FunctionImportMappingComposable.cs (1)
113
var rootInput = rootProject.
Child0
; // the RelInput in PhysicalProject(RelInput)
System\Data\Mapping\ViewGeneration\GeneratedView.cs (1)
219
m_internalTreeNode = itree.Root.
Child0
;
System\Data\Query\InternalTrees\Dump.cs (1)
182
VisitNode(n.
Child0
);
System\Data\Query\InternalTrees\NodeInfo.cs (21)
526
if (n.
Child0
.Op.OpType == OpType.VarDef && n.
Child0
.
Child0
.Op.OpType == OpType.Function && op.Table.Keys.Count > 0)
545
NodeInfo childNodeInfo = GetNodeInfo(n.
Child0
);
569
VarRefOp varRefOp = varDefNode.
Child0
.Op as VarRefOp;
599
ExtendedNodeInfo relOpChildNodeInfo = GetExtendedNodeInfo(n.
Child0
);
623
NodeInfo chiNodeInfo = GetNodeInfo(chi.
Child0
);
629
if (IsDefinitionNonNullable(chi.
Child0
, nodeInfo.NonNullableVisibleDefinitions))
680
ExtendedNodeInfo relOpChildNodeInfo = GetExtendedNodeInfo(n.
Child0
);
737
ExtendedNodeInfo relOpChildNodeInfo = GetExtendedNodeInfo(n.
Child0
);
749
NodeInfo keyExprNodeInfo = GetNodeInfo(chi.
Child0
);
751
if (IsDefinitionNonNullable(chi.
Child0
, relOpChildNodeInfo.NonNullableDefinitions))
766
NodeInfo aggExprNodeInfo = GetNodeInfo(chi.
Child0
);
874
ExtendedNodeInfo leftRelOpNodeInfo = GetExtendedNodeInfo(n.
Child0
);
957
ExtendedNodeInfo leftRelOpNodeInfo = GetExtendedNodeInfo(n.
Child0
);
1019
ExtendedNodeInfo leftChildNodeInfo = GetExtendedNodeInfo(n.
Child0
);
1134
ExtendedNodeInfo relOpChildNodeInfo = GetExtendedNodeInfo(n.
Child0
);
1191
ExtendedNodeInfo childNodeInfo = GetExtendedNodeInfo(n.
Child0
);
1231
ExtendedNodeInfo childNodeInfo = GetExtendedNodeInfo(n.
Child0
);
1288
ExtendedNodeInfo driverChildNodeInfo = GetExtendedNodeInfo(n.
Child0
);
1341
nodeInfo.Keys.InitFrom(GetExtendedNodeInfo(n.
Child0
).Keys);
System\Data\Query\PlanCompiler\AggregatePushdown.cs (15)
338
inputNode = inputNode.
Child0
;
405
if (n.
Child0
.Op.OpType != OpType.VarRef)
409
VarRefOp varRefOp = (VarRefOp)n.
Child0
.Op;
431
Node currentNode = n.
Child0
;
433
while (currentNode.
Child0
.Op.OpType == OpType.Project)
435
currentNode = currentNode.
Child0
;
443
if (IsConstant(definitionNode.
Child0
))
445
constantDefinitions.Add(((VarDefOp)definitionNode.Op).Var, definitionNode.
Child0
);
450
if (currentNode.
Child0
.Op.OpType != OpType.Unnest)
456
UnnestOp unnestOp = (UnnestOp)currentNode.
Child0
.Op;
478
PhysicalProjectOp physicalProjectOp = (PhysicalProjectOp)n.
Child0
.Op;
510
currentNode = currentNode.
Child0
;
681
Node definingNode = n.
Child0
;
767
Node argumentNode = n.
Child0
;
772
if (GroupAggregateVarComputationTranslator.TryTranslateOverGroupAggregateVar(n.
Child0
, false, _command, _groupAggregateVarInfoManager, out referencedGroupAggregateVarInfo, out templateNode, out isUnnested)
System\Data\Query\PlanCompiler\CTreeGenerator.cs (27)
531
varDefs.Add(defOp.Var, VisitNode(childNode.
Child0
));
1073
DbExpression inputExpr = VisitNode(n.
Child0
);
1090
DbExpression inputExpr = VisitNode(n.
Child0
);
1322
PlanCompiler.Assert(n.
Child0
.Op.OpType == OpType.VarDef,
1326
Node input = n.
Child0
.
Child0
;
1357
relOpNode = relOpNode.
Child0
;
1446
RelOpInfo sourceInfo = EnterExpressionBindingScope(n.
Child0
);
1485
RelOpInfo inputInfo = EnterExpressionBindingScope(n.
Child0
);
1557
RelOpInfo inputInfo = EnterExpressionBindingScope(n.
Child0
);
1601
DbExpression inputExpr = this.VisitNode(n.
Child0
);
1617
inputInfo = EnterExpressionBindingScope(n.
Child0
);
1676
GroupByScope inputInfo = EnterGroupByScope(n.
Child0
);
1746
Node aggOpNode = aggVarDefNode.
Child0
;
1747
DbExpression aggDef = VisitNode(aggOpNode.
Child0
);
1836
if (joinInputNode.Op.OpType == OpType.Filter && joinInputNode.
Child0
.Op.OpType == OpType.ScanTable)
1838
ScanTableOp scanTableOp = (ScanTableOp)joinInputNode.
Child0
.Op;
1876
RelOpInfo leftInfo = VisitJoinInput(joinNode.
Child0
);
2016
RelOpInfo inputInfo = EnterExpressionBindingScope(applyNode.
Child0
);
2148
DbExpression left = VisitSetOpArgument(n.
Child0
, op.Outputs, op.VarMap[0]);
2221
RelOpInfo sourceInfo = BuildProjection(n.
Child0
, op.Keys);
2254
if (n.
Child0
.Op.OpType != OpType.Project)
2256
ExtendedNodeInfo childNodeInfo = _iqtCommand.GetExtendedNodeInfo(n.
Child0
);
2262
inputInfo = BuildEmptyProjection(n.
Child0
);
2266
inputInfo = BuildProjection(n.
Child0
, childNodeInfo.Definitions);
2272
inputExpr = VisitNode(n.
Child0
);
2359
RelOpInfo sourceInfo = BuildProjection(n.
Child0
, op.Outputs);
System\Data\Query\PlanCompiler\ITreeGenerator.cs (11)
315
newRoot = _iqtCommand.CreateNode(unnestOp, varDefListNode.
Child0
);
667
if (inputNode.
Child0
.Op as PhysicalProjectOp != null)
669
PlanCompiler.Assert(inputNode.
Child0
.HasChild0, "PhysicalProjectOp without argument");
670
PlanCompiler.Assert(inputNode.
Child0
.
Child0
.Op.IsRelOp, "PhysicalProjectOp applied to non-RelOp input");
675
return inputNode.
Child0
.
Child0
;
1388
inputNode.
Child0
,
1431
|| (OpType.Sort == inputNode.
Child0
.Op.OpType
1432
|| OpType.ConstrainedSort == inputNode.
Child0
.Op.OpType)))
1442
inputNode.Child0 = CreateLimitNode(inputNode.
Child0
, limitNode, expression.WithTies);
System\Data\Query\PlanCompiler\JoinGraph.cs (2)
654
ExtendedNodeInfo leftInputNodeInfo = m_command.GetExtendedNodeInfo(joinNode.
Child0
);
700
AugmentedNode left = BuildAugmentedNodeTree(node.
Child0
);
System\Data\Query\PlanCompiler\KeyPullup.cs (1)
137
ExtendedNodeInfo childNodeInfo = n.
Child0
.GetExtendedNodeInfo(m_command);
System\Data\Query\PlanCompiler\NestPullup.cs (64)
294
if (n.
Child0
.Op.OpType == OpType.VarRef)
296
m_varRefMap.Add(op.Var, ((VarRefOp)n.
Child0
.Op).Var);
363
Var inputVar = ((ProjectOp)n.
Child0
.Op).Outputs.First;
366
VarVec newOutputs = ((ProjectOp)n.
Child0
.Op).Outputs;
503
newJoinApplyChildren.Add(AugmentNodeWithConstant(chi.
Child0
, () => Command.CreateNullSentinelOp(), out sentinelVar));
508
m_definingNodeMap[collectionInfo.CollectionVar].Child0 = ApplyIsNotNullFilter(m_definingNodeMap[collectionInfo.CollectionVar].
Child0
, sentinelVar);
519
newJoinApplyChildren.Add(chi.
Child0
);
573
newFilterChild = newFilterChild.
Child0
;
661
NestBaseOp nestOp = n.
Child0
.Op as NestBaseOp;
677
Node nestOpNode = n.
Child0
;
678
Node nestOpInputNode = nestOpNode.
Child0
;
740
Command.CreateGroupByOp(op.Keys, groupByOutputs), n.
Child0
, n.Child1, n.Child2);
814
if (n.
Child0
.Op.OpType == OpType.Sort)
816
Node sortNode = n.
Child0
;
824
n.Child0 = sortNode.
Child0
;
856
if (newNode.Op.OpType == OpType.Project && IsNestOpNode(newNode.
Child0
))
893
if (!IsNestOpNode(nestNode) || !IsNestOpNode(nestNode.
Child0
))
902
Node nestedNestNode = nestNode.
Child0
;
918
newNestInputs.Add(nestedNestNode.
Child0
);
997
Node definingExprNode = chi.
Child0
;
1002
PlanCompiler.Assert(OpType.PhysicalProject == definingExprNode.
Child0
.Op.OpType, "collect without physicalProject?");
1003
Node physicalProjectNode = definingExprNode.
Child0
;
1063
if (IsNestOpNode(projectNode.
Child0
))
1081
projectNode = projectNode.
Child0
;
1086
NestBaseOp nestedNestOp = (NestBaseOp)projectNode.
Child0
.Op;
1093
newNestedProjectNodeInputs.Add(projectNode.
Child0
.
Child0
);
1126
for (int j = 1; j < projectNode.
Child0
.Children.Count; j++)
1128
newNestedNestNodeInputs.Add(projectNode.
Child0
.Children[j]);
1146
projectNode = projectNode.
Child0
;
1235
Node nestOpInput = physicalProjectNode.
Child0
;
1323
Node nestNode = projectNode.
Child0
;
1387
newNestNodeChildren.Add(nestNode.
Child0
);
1408
leftCorrelationVars.And(nestNode.
Child0
.GetExtendedNodeInfo(this.Command).Definitions);
1457
projectNode.Child0 = nestNode.
Child0
;
1485
projectNode.Child0 = nestNode.
Child0
;
1531
if (IsNestOpNode(n.
Child0
))
1533
n = n.
Child0
;
1534
Node newSingleRowOpNode = Command.CreateNode(op, n.
Child0
);
1561
NestBaseOp nestOp = n.
Child0
.Op as NestBaseOp;
1564
n.
Child0
.Op = GetNestOpWithConsolidatedSortKeys(nestOp, op.Keys);
1565
return n.
Child0
;
1592
NestBaseOp nestOp = n.
Child0
.Op as NestBaseOp;
1595
Node nestNode = n.
Child0
;
1596
n.Child0 = nestNode.
Child0
;
1745
PlanCompiler.Assert(n.
Child0
.Op.OpType == OpType.VarDef, "Unnest without VarDef input?");
1746
PlanCompiler.Assert(((VarDefOp)n.
Child0
.Op).Var == op.Var, "Unnest var not found?");
1747
PlanCompiler.Assert(n.
Child0
.HasChild0, "VarDef without input?");
1748
Node newNode = n.
Child0
.
Child0
;
1762
newNode = newNode.
Child0
;
1793
newNode = newNode.
Child0
;
1939
if (n != Command.Root || !IsNestOpNode(n.
Child0
))
1948
Node nestNode = n.
Child0
;
2005
sortNode = Command.CreateNode(sortOp, nestNode.
Child0
);
2010
sortNode = nestNode.
Child0
;
2160
Node drivingNode = nestNode.
Child0
;
2383
inputNode = inputNode.
Child0
;
2392
inputNode = inputNode.
Child0
; // bypass the sort node
2477
Node drivingNode = nestNode.
Child0
;
2754
if (command.Root.
Child0
!= null && command.Root.
Child0
.Op.OpType == OpType.Sort)
2756
topMostSort = command.Root.
Child0
;
2814
result = n.
Child0
;
System\Data\Query\PlanCompiler\NominalTypeEliminator.cs (43)
377
node = node.
Child0
;
798
newChildren.Add(FlattenEnumOrStrongSpatialVar(varDefOp, chi.
Child0
));
820
Node definingExprNode = node.
Child0
; // defining expression for the VarDefOp
1137
return n.
Child0
;
1217
return GetSingletonVar(n.
Child0
);
1258
Var inputVar = GetSingletonVar(n.
Child0
);
1264
Node definingNode = VisitNode(n.
Child0
);
1324
Node chi = n.
Child0
;
1333
if (chi.HasChild0 && chi.
Child0
.Op.OpType == OpType.Function)
1340
processingTVF = ((FunctionOp)chi.
Child0
.Op).Function;
1723
md.TypeUsage inputTypeUsage = n.
Child0
.Op.Type;
1733
PlanCompiler.Assert(n.
Child0
.Op.OpType == OpType.NewRecord, "Expected a record constructor here. Found " + n.
Child0
.Op.OpType + " instead");
1749
IEnumerator<Node> inputs = n.
Child0
.Children.GetEnumerator();
1750
int inputPropertyCount = n.
Child0
.Children.Count;
1796
return BuildSoftCast(n.
Child0
, newType);
1813
PlanCompiler.Assert(Command.EqualTypes(newType, n.
Child0
.Op.Type),
1815
return n.
Child0
;
1836
PlanCompiler.Assert(md.TypeSemantics.IsPrimitiveType(n.
Child0
.Op.Type), "Primitive type expected.");
1844
PlanCompiler.Assert(md.TypeSemantics.IsPrimitiveType(n.
Child0
.Op.Type, md.PrimitiveTypeKind.Geography) || md.TypeSemantics.IsPrimitiveType(n.
Child0
.Op.Type, md.PrimitiveTypeKind.Geometry), "Union spatial type expected.");
1856
if (underlyingType.PrimitiveTypeKind == ((md.PrimitiveType)n.
Child0
.Op.Type.EdmType).PrimitiveTypeKind)
1858
return n.
Child0
;
1862
return m_command.CreateNode(m_command.CreateCastOp(md.TypeUsage.Create(underlyingType, op.Type.Facets)), n.
Child0
);
2003
Node currentNullSentinel = resultNode.
Child0
;
2011
children.Add(n.
Child0
);
2117
md.TypeUsage child0Type = ((ScalarOp)n.
Child0
.Op).Type;
2147
GetPropertyValues(child0TypeInfo, OperationKind.Equality, n.
Child0
, false, out properties1, out values1);
2197
md.TypeUsage childOpType = ((ScalarOp)n.
Child0
.Op).Type;
2214
GetPropertyValues(typeInfo, OperationKind.IsNull, n.
Child0
, false, out properties, out values);
2285
TypeInfo inputTypeInfo = m_typeInfo.GetTypeInfo(((ScalarOp)n.
Child0
.Op).Type);
2299
GetPropertyValues(inputTypeInfo, OperationKind.GetKeys, n.
Child0
, false /* ignore missing props */, out inputFieldTypes, out inputFieldValues);
2305
GetPropertyValues(inputTypeInfo, OperationKind.GetIdentity, n.
Child0
, false, out inputFieldTypes, out inputFieldValues);
2336
md.TypeUsage inputType = n.
Child0
.Op.Type;
2370
Node field = BuildAccessor(n.
Child0
, newNestedProp);
2386
newNode = this.BuildAccessorWithNulls(n.
Child0
, newProp);
2436
TypeInfo inputTypeInfo = m_typeInfo.GetTypeInfo(((ScalarOp)n.
Child0
.Op).Type);
2445
GetPropertyValues(inputTypeInfo, OperationKind.All, n.
Child0
, false, out inputFields, out inputFieldValues);
2922
Node newNode = CreateTypeComparisonOp(n.
Child0
, typeInfo, op.IsOfOnly);
2943
ScalarOp arg = (ScalarOp)n.
Child0
.Op;
2948
return n.
Child0
;
2962
Node likeNode = CreateTypeComparisonOp(n.
Child0
, typeInfo, false);
2964
Node caseNode = m_command.CreateNode(caseOp, likeNode, n.
Child0
, CreateNullConstantNode(caseOp.Type));
System\Data\Query\PlanCompiler\Normalizer.cs (5)
88
n.Child0 = BuildDummyProjectForExists(n.
Child0
);
170
Node argNode = n.
Child0
;
174
argNode = argNode.
Child0
;
178
argNode = argNode.
Child0
;
259
n.Child2.Child0 = BuildDummyProjectForExists(n.Child2.
Child0
);
System\Data\Query\PlanCompiler\PlanCompilerUtil.cs (2)
82
TypeSemantics.IsCollectionType(n.
Child0
.Op.Type) &&
153
node => (new[] {node.
Child0
, node.Child1}));
System\Data\Query\PlanCompiler\Predicate.cs (9)
223
if (IsKeyPredicate(part.
Child0
, part.Child1, keyVars, definitions, out keyVar))
227
else if (IsKeyPredicate(part.Child1, part.
Child0
, keyVars, definitions, out keyVar))
278
InitFromAndTree(andTree.
Child0
);
349
VarRefOp leftVarOp = simplePredicateNode.
Child0
.Op as VarRefOp;
433
varRefOp = simplePredNode.
Child0
.Op as VarRefOp;
446
if (simplePredNode.
Child0
.Op.OpType != OpType.IsNull)
450
varRefOp = simplePredNode.
Child0
.
Child0
.Op as VarRefOp;
461
varRefOp = simplePredNode.
Child0
.Op as VarRefOp;
System\Data\Query\PlanCompiler\PreProcessor.cs (32)
409
DiscriminatedNewEntityOp discriminatedNewEntityOp = viewNode.Child1.
Child0
.
Child0
.Op as DiscriminatedNewEntityOp;
480
if (navigateOpNode.
Child0
.Op.OpType == OpType.GetEntityRef &&
488
navigateOpNode.
Child0
.
Child0
);
539
Node predicateNode = m_command.BuildComparison(OpType.EQ, navigateOpNode.
Child0
, sourceEnd);
652
m_command.CreateGetEntityRefOp(derefOpNode.
Child0
.Op.Type),
654
Node keyComparisonPred = m_command.BuildComparison(OpType.EQ, derefOpNode.
Child0
, entityRefNode);
1091
Node subQueryRelOp = n.
Child0
;
1228
if (op.OpType == OpType.IsNull && TypeSemantics.IsRowType(n.
Child0
.Op.Type) || TypeSemantics.IsComplexType(n.
Child0
.Op.Type))
1230
StructuredTypeNullabilityAnalyzer.MarkAsNeedingNullSentinel(m_typesNeedingNullSentinel, n.
Child0
.Op.Type);
1288
bool visitChildLater = IsNavigationPropertyOverVarRef(n.
Child0
);
1295
Node ret = RewriteNavigationProperty(navProperty, n.
Child0
, op.Type);
1313
Node currentNode = n.
Child0
;
1316
currentNode = currentNode.
Child0
;
1375
if (CanRewriteTypeTest(op.Type.EdmType, n.
Child0
.Op.Type.EdmType))
1379
return n.
Child0
;
1400
if (CanRewriteTypeTest(op.IsOfType.EdmType, n.
Child0
.Op.Type.EdmType))
1469
Node isNullNode = m_command.CreateNode(isNullOp, n.
Child0
);
2249
return VisitNode(n.
Child0
);
2278
ScanTableOp scanTableOp = n.
Child0
.Op as ScanTableOp;
2286
VarRefOp varRefOp = n.Child1.
Child0
.Op as VarRefOp;
2314
Node ret = ProcessScanTable(n.
Child0
, (ScanTableOp)n.
Child0
.Op, ref typeFilter);
2342
if (OpType.Sort == n.
Child0
.Op.OpType || OpType.ConstrainedSort == n.
Child0
.Op.OpType)
2344
SortBaseOp sort = (SortBaseOp)n.
Child0
.Op;
2354
for (int i = 1; i < n.
Child0
.Children.Count; i++)
2356
sortChildren.Add(n.
Child0
.Children[i]);
2360
n.Child0 = n.
Child0
.
Child0
;
System\Data\Query\PlanCompiler\ProjectionPruner.cs (11)
420
if (op.Keys.Count > 1 && n.
Child0
.Op.OpType == OpType.Project)
422
RemoveRedundantConstantKeys(op.Keys, ((ProjectOp)n.
Child0
.Op).Outputs, n.
Child0
.Child1);
442
ExtendedNodeInfo nodeInfo = m_command.GetExtendedNodeInfo(n.
Child0
);
445
n.Child0 = VisitNode(n.
Child0
); // visit the child
533
&& PlanCompilerUtil.IsConstantBaseOp(d.
Child0
.Op.OpType)).ToList();
574
result.
Child0
, result.Child1, result.Child2);
606
n.Child0 = VisitNode(n.
Child0
);
641
return op.Outputs.IsEmpty ? n.
Child0
: n;
721
n.Child0 = VisitNode(n.
Child0
);
781
ProjectOp projectOp = (ProjectOp)n.
Child0
.Op;
System\Data\Query\PlanCompiler\PropertyPushdownHelper.cs (15)
298
AddPropertyRefs(n.
Child0
, childProps);
350
md.TypeUsage childOpType = (n.
Child0
.Op as ScalarOp).Type;
393
ScalarOp childOp = n.
Child0
.Op as ScalarOp;
400
AddPropertyRefs(n.
Child0
, desiredProperties);
402
VisitNode(n.
Child0
);
419
AddPropertyRefs(n.
Child0
, childProps);
467
AddPropertyRefs(n.
Child0
, cdProps);
513
AddPropertyRefs(n.
Child0
, childProps);
554
AddPropertyRefs(n.
Child0
, myProps);
588
VisitNode(n.
Child0
); // the left input
620
VisitNode(n.
Child0
); // then visit the relop input
667
VisitNode(n.
Child0
); // then, the left input
680
VisitNode(n.
Child0
); // then visit the relop input
708
Var inputVar = NominalTypeEliminator.GetSingletonVar(n.
Child0
);
778
VisitNode(n.
Child0
);
System\Data\Query\PlanCompiler\SubqueryTrackingVisitor.cs (1)
211
Node newInputNode = AugmentWithSubqueries(n.
Child0
, nestedSubqueries, true);
System\Data\Query\PlanCompiler\TransformationRules.cs (128)
299
if (!IsScalarOpTree(chi.
Child0
, null, ref nonLeafNodeCount))
321
PlanCompiler.Assert(n == chi.
Child0
, "reusing varDef for different Node?");
325
varMap.Add(varDefOp.Var, chi.
Child0
);
1078
bool? comparisonStatus = node.
Child0
.Op.IsEquivalent(node.Child1.Op);
1133
InternalConstantOp strOp = (InternalConstantOp)n.
Child0
.Op;
1219
return ProcessLogOpOverConstant(context, node, node.Child1, node.
Child0
, out newNode);
1223
return ProcessLogOpOverConstant(context, node, node.
Child0
, node.Child1, out newNode);
1227
return ProcessLogOpOverConstant(context, node, node.Child1, node.
Child0
, out newNode);
1231
return ProcessLogOpOverConstant(context, node, node.
Child0
, node.Child1, out newNode);
1235
return ProcessLogOpOverConstant(context, node, node.
Child0
, null, out newNode);
1325
Var v = ((VarRefOp)isNullNode.
Child0
.Op).Var;
1402
ExtendedNodeInfo inputNodeInfo = command.GetExtendedNodeInfo(filterNode.
Child0
);
1435
filterNode.
Child0
.Child1, filterNode.Child1);
1437
newNode = context.Command.CreateNode(context.Command.CreateFilterOp(), filterNode.
Child0
.
Child0
, newAndNode);
1484
Node projectNode = filterNode.
Child0
;
1499
Node newFilterNode = trc.Command.CreateNode(trc.Command.CreateFilterOp(), projectNode.
Child0
, remappedPredicateNode);
1564
Node setOpNode = filterNode.
Child0
;
1659
Node distinctNode = filterNode.
Child0
;
1660
Node pushdownFilterNode = context.Command.CreateNode(context.Command.CreateFilterOp(), distinctNode.
Child0
, pushdownPredicate);
1703
Node groupByNode = filterNode.
Child0
;
1742
Node subFilterNode = trc.Command.CreateNode(trc.Command.CreateFilterOp(), groupByNode.
Child0
, remappedPushdownPredicate);
1806
Node joinNode = filterNode.
Child0
;
1808
Node leftInputNode = joinNode.
Child0
;
1959
Node applyNode = filterNode.
Child0
;
1973
Node newApplyNode = command.CreateNode(command.CreateCrossApplyOp(), applyNode.
Child0
, applyRightInputNode);
2009
newNode = n.
Child0
;
2021
if (n.
Child0
.Op.OpType == OpType.SingleRowTable ||
2022
(n.
Child0
.Op.OpType == OpType.Project &&
2023
n.
Child0
.
Child0
.Op.OpType == OpType.SingleRowTable))
2029
ExtendedNodeInfo childNodeInfo = trc.Command.GetExtendedNodeInfo(n.
Child0
);
2115
Node subProjectNode = projectNode.
Child0
;
2124
if (!trc.IsScalarOpTree(varDefNode.
Child0
, varRefMap))
2143
varDefNode.Child0 = trc.ReMap(varDefNode.
Child0
, varMap);
2163
projectNode.Child0 = subProjectNode.
Child0
;
2199
newNode = n.
Child0
;
2242
Node definingExprNode = varDefNode.
Child0
;
2271
VarRefOp varRefOp = varDefNode.
Child0
.Op as VarRefOp;
2332
if (varDefListNode.Children.Where(c => c.
Child0
.Op.OpType == OpType.NullSentinel).Count() == 0)
2339
ExtendedNodeInfo relOpInputNodeInfo = command.GetExtendedNodeInfo(n.
Child0
);
2348
if (!canChangeNullSentinelValue || !TransformationRulesContext.TryGetInt32Var(n.Child1.Children.Where(child => child.
Child0
.Op.OpType == OpType.Constant || child.
Child0
.Op.OpType == OpType.InternalConstant).Select(child => ((VarDefOp)(child.Op)).Var), out inputSentinel))
2350
inputSentinel = n.Child1.Children.Where(child => child.
Child0
.Op.OpType == OpType.NullSentinel).Select(child => ((VarDefOp)(child.Op)).Var).FirstOrDefault();
2363
Node definingExprNode = varDefNode.
Child0
;
2439
NodeInfo filterInputNodeInfo = command.GetNodeInfo(filterNode.
Child0
);
2440
ExtendedNodeInfo applyLeftChildNodeInfo = command.GetExtendedNodeInfo(applyNode.
Child0
);
2468
newNode = command.CreateNode(joinOp, applyNode.
Child0
, filterNode.
Child0
, filterNode.Child1);
2516
Node filterNode = projectNode.
Child0
;
2517
Node filterInputNode = filterNode.
Child0
;
2521
ExtendedNodeInfo applyLeftChildNodeInfo = command.GetExtendedNodeInfo(applyNode.
Child0
);
2567
Node varDefNode = projectNode.Child1.
Child0
;
2568
if (varDefNode.
Child0
.Op.OpType == OpType.NullSentinel && sentinelIsInt32 && trc.CanChangeNullSentinelValue)
2574
varDefNode.Child0 = trc.BuildNullIfExpression(sentinelVar, varDefNode.
Child0
);
2605
Node joinNode = command.CreateNode(command.CreateLeftOuterJoinOp(), applyNode.
Child0
, joinNodeRightInput, filterNode.Child1);
2653
applyNode.Child1 = projectNode.
Child0
;
2710
ExtendedNodeInfo inputNodeInfo = context.Command.GetExtendedNodeInfo(projectNode.
Child0
);
2720
(varDefListNode.
Child0
.
Child0
.Op.OpType == OpType.InternalConstant || varDefListNode.
Child0
.
Child0
.Op.OpType == OpType.NullSentinel))
2730
ExtendedNodeInfo projectInputNodeInfo = command.GetExtendedNodeInfo(projectNode.
Child0
);
2744
VarRefOp varRefOp = varDefNode.
Child0
.Op as VarRefOp;
2755
dummyProjectNode = command.CreateNode(dummyProjectOp, projectNode.
Child0
, dummyProjectVarDefListNode);
2763
if (nullSentinelDefinitionOp != null && ((true == nullSentinelDefinitionOp.IsEquivalent(varDefNode.
Child0
.Op)) ||
2765
varDefNode.
Child0
.Op.OpType == OpType.NullSentinel))
2771
currentDefinition = trc.BuildNullIfExpression(sentinelVar, varDefNode.
Child0
);
2788
applyNode.Child1 = dummyProjectNode != null ? dummyProjectNode : projectNode.
Child0
;
2796
ExtendedNodeInfo applyLeftChildNodeInfo = command.GetExtendedNodeInfo(applyNode.
Child0
);
2829
Node applyLeftChild = applyNode.
Child0
;
2929
ExtendedNodeInfo applyLeftChildNodeInfo = command.GetExtendedNodeInfo(applyNode.
Child0
);
2953
applyNode.
Child0
,
3099
return VisitNode(n.
Child0
);
3155
return VisitNode(n.
Child0
);
3220
Var newVar = m_command.CreateComputedVar(n.
Child0
.Op.Type);
3416
(joinNode.
Child0
.Op.OpType == OpType.Project) &&
3419
ProjectOp projectOp1 = (ProjectOp)joinNode.
Child0
.Op;
3422
Dictionary<Var, Node> varMap1 = trc.GetVarMap(joinNode.
Child0
.Child1, varRefMap);
3433
newJoinNode = context.Command.CreateNode(joinNode.Op, joinNode.
Child0
.
Child0
, joinNode.Child1.
Child0
, joinConditionNode);
3437
newJoinNode = context.Command.CreateNode(joinNode.Op, joinNode.
Child0
.
Child0
, joinNode.Child1.
Child0
);
3446
varDefNodes.AddRange(joinNode.
Child0
.Child1.Children);
3459
if (joinNode.
Child0
.Op.OpType == OpType.Project)
3487
joinNode.Children[projectNodeIdx] = projectNode.
Child0
; // bypass the projectOp
3558
Node newLeftInput = joinNode.
Child0
;
3560
if (joinNode.
Child0
.Op.OpType == OpType.Filter)
3562
predicateNode = joinNode.
Child0
.Child1;
3563
newLeftInput = joinNode.
Child0
.
Child0
; // bypass the filter
3580
newRightInput = joinNode.Child1.
Child0
; // bypass the filter
3647
if (joinNode.
Child0
.Op.OpType == OpType.SingleRowTable)
3653
newNode = joinNode.
Child0
;
3708
ExtendedNodeInfo childNodeInfo = context.Command.GetExtendedNodeInfo(singleRowNode.
Child0
);
3714
newNode = singleRowNode.
Child0
;
3722
if (singleRowNode.
Child0
.Op.OpType == OpType.Filter)
3724
Predicate predicate = new Predicate(context.Command, singleRowNode.
Child0
.Child1);
3728
newNode = singleRowNode.
Child0
;
3753
Node projectNode = singleRowNode.
Child0
;
3754
Node projectNodeInput = projectNode.
Child0
;
3814
bool leftChildIsEmptySet = context.Command.GetExtendedNodeInfo(setOpNode.
Child0
).MaxRows == RowCount.Zero;
3901
Node definingExprNode = varDefNode.
Child0
;
3929
VarRefOp varRefOp = varDefNode.
Child0
.Op as VarRefOp;
3978
Node projectNode = n.
Child0
;
4006
if (varDefNode.
Child0
.Op.OpType == OpType.Constant || varDefNode.
Child0
.Op.OpType == OpType.InternalConstant || varDefNode.
Child0
.Op.OpType == OpType.NullSentinel)
4031
varToDefiningNode.Add(var, varDefNode.
Child0
);
4036
newNode.Child0 = projectNode.
Child0
;
4180
ExtendedNodeInfo nodeInfo = command.GetExtendedNodeInfo(n.
Child0
);
4186
newNode = command.CreateNode(newOp, n.
Child0
, n.Child1);
4238
if (n.
Child0
.Op.OpType != OpType.ScanTable)
4244
|| n.Child2.
Child0
== null
4245
|| n.Child2.
Child0
.
Child0
== null
4246
|| n.Child2.
Child0
.
Child0
.Op.OpType != OpType.Aggregate)
4253
var sourceTable = ((ScanTableOp)n.
Child0
.Op).Table;
4311
n.
Child0
,
4349
ExtendedNodeInfo nodeInfo = ((TransformationRulesContext)context).Command.GetExtendedNodeInfo(n.
Child0
);
4354
newNode = n.
Child0
;
4388
ExtendedNodeInfo nodeInfo = ((TransformationRulesContext)context).Command.GetExtendedNodeInfo(n.
Child0
);
4393
newNode = n.
Child0
;
4430
ExtendedNodeInfo nodeInfo = command.GetExtendedNodeInfo(n.
Child0
);
4443
newNode = command.CreateNode(newOp, n.
Child0
, varDefListNode);