1 instantiation of VarVec
System.Data.Entity (1)
System\Data\Query\InternalTrees\Command.cs (1)
172
vec = new
VarVec
(this);
263 references to VarVec
System.Data.Entity (263)
System\Data\Query\InternalTrees\Command.cs (35)
46
private Stack<
VarVec
.VarVecEnumerator> m_freeVarVecEnumerators;
47
private Stack<
VarVec
> m_freeVarVecs;
82
m_freeVarVecEnumerators = new Stack<
VarVec
.VarVecEnumerator>();
83
m_freeVarVecs = new Stack<
VarVec
>();
167
internal
VarVec
CreateVarVec()
169
VarVec
vec;
187
internal
VarVec
CreateVarVec(Var v)
189
VarVec
varset = CreateVarVec();
199
internal
VarVec
CreateVarVec(IEnumerable<Var> v)
201
VarVec
vec = CreateVarVec();
211
internal
VarVec
CreateVarVec(
VarVec
v)
213
VarVec
vec = CreateVarVec();
222
internal void ReleaseVarVec(
VarVec
vec)
235
internal
VarVec
.VarVecEnumerator GetVarVecEnumerator(
VarVec
vec)
237
VarVec
.VarVecEnumerator enumerator;
242
enumerator = new
VarVec
.VarVecEnumerator(vec);
256
internal void ReleaseVarVecEnumerator(
VarVec
.VarVecEnumerator enumerator)
1162
internal ProjectOp CreateProjectOp(
VarVec
vars)
1173
VarVec
varSet = this.CreateVarVec();
1312
internal GroupByOp CreateGroupByOp(
VarVec
gbyKeys,
VarVec
outputs)
1324
internal GroupByIntoOp CreateGroupByIntoOp(
VarVec
gbyKeys,
VarVec
inputs,
VarVec
outputs)
1334
internal DistinctOp CreateDistinctOp(
VarVec
keyVars)
1369
VarVec
vec = this.CreateVarVec();
1386
VarVec
vec = this.CreateVarVec();
1402
VarVec
vec = this.CreateVarVec();
1472
internal static CollectionInfo CreateCollectionInfo(Var collectionVar, ColumnMap columnMap, VarList flattenedElementVars,
VarVec
keys, List<InternalTrees.SortKey> sortKeys, object discriminatorValue)
1487
internal SingleStreamNestOp CreateSingleStreamNestOp(
VarVec
keys,
1489
VarVec
outputVars,
1502
internal MultiStreamNestOp CreateMultiStreamNestOp(List<SortKey> prefixSortKeys,
VarVec
outputVars,
1688
VarVec
projectVars = this.CreateVarVec(inputVars);
System\Data\Query\InternalTrees\Metadata.cs (6)
196
private
VarVec
m_referencedColumns;
197
private
VarVec
m_keys;
198
private
VarVec
m_nonnullableColumns;
242
internal
VarVec
ReferencedColumns
250
internal
VarVec
NonNullableColumns { get { return m_nonnullableColumns; } }
255
internal
VarVec
Keys { get { return m_keys; } }
System\Data\Query\InternalTrees\NodeInfo.cs (23)
29
private
VarVec
m_keys;
92
internal
VarVec
KeyVars { get { return m_keys; } }
108
private
VarVec
m_externalReferences;
132
internal
VarVec
ExternalReferences
150
internal static int GetHashValue(
VarVec
vec)
220
private
VarVec
m_localDefinitions;
221
private
VarVec
m_definitions;
223
private
VarVec
m_nonNullableDefinitions;
224
private
VarVec
m_nonNullableVisibleDefinitions;
273
internal
VarVec
LocalDefinitions { get { return m_localDefinitions; } }
277
internal
VarVec
Definitions { get { return m_definitions; } }
285
internal
VarVec
NonNullableDefinitions { get { return m_nonNullableDefinitions; } }
289
internal
VarVec
NonNullableVisibleDefinitions { get { return m_nonNullableVisibleDefinitions; } }
429
private bool IsDefinitionNonNullable(Node definition,
VarVec
nonNullableInputs)
644
VarVec
keyVec = m_command.CreateVarVec(relOpChildNodeInfo.Keys.KeyVars);
646
VarVec
mappedKeyVec = keyVec.Remap(varRenameMap);
647
VarVec
mappedKeyVecClone = mappedKeyVec.Clone();
648
VarVec
opVars = m_command.CreateVarVec(op.Outputs);
1060
VarVec
nodeKeys = m_command.CreateVarVec();
1061
VarVec
mappedKeyVec;
1095
VarVec
leftNonNullableVars = leftChildNodeInfo.NonNullableDefinitions.Remap(op.VarMap[0].GetReverseMap());
1100
VarVec
rightNonNullableVars = rightChildNodeInfo.NonNullableDefinitions.Remap(op.VarMap[1].GetReverseMap());
1291
VarVec
missingKeys = m_command.CreateVarVec(driverChildNodeInfo.Keys.KeyVars);
System\Data\Query\InternalTrees\OpCopier.cs (8)
182
private
VarVec
Copy(
VarVec
vars)
184
VarVec
newVarVec = m_destCmd.CreateVarVec(MapVars(vars));
741
VarVec
newVarSet = Copy(op.Outputs);
1014
VarVec
newDistinctKeys = Copy(op.Keys);
1119
VarVec
newKeys = Copy(ci.Keys);
1125
VarVec
newOutputs = Copy(op.Outputs);
1131
VarVec
newKeys = Copy(ssnOp.Keys);
System\Data\Query\InternalTrees\PhysicalOps.cs (11)
127
internal
VarVec
Keys
152
internal CollectionInfo(Var collectionVar, ColumnMap columnMap, VarList flattenedElementVars,
VarVec
keys, List<InternalTrees.SortKey> sortKeys, object discriminatorValue)
167
private
VarVec
m_keys; //list of keys specific to this collection
193
internal
VarVec
Outputs
209
VarVec
outputVars,
221
private
VarVec
m_outputs; // list of all output vars
255
internal
VarVec
Keys
286
internal SingleStreamNestOp(
VarVec
keys,
288
VarVec
outputVars, List<CollectionInfo> collectionInfoList,
299
private
VarVec
m_keys; // keys for this operation
331
internal MultiStreamNestOp(List<SortKey> prefixSortKeys,
VarVec
outputVars,
System\Data\Query\InternalTrees\RelOps.cs (25)
475
private
VarVec
m_vars;
482
internal ProjectOp(
VarVec
vars) : this()
501
internal
VarVec
Outputs { get { return m_vars; } }
688
private
VarVec
m_keys;
689
private
VarVec
m_outputs;
697
internal GroupByBaseOp(OpType opType,
VarVec
keys,
VarVec
outputs)
709
internal
VarVec
Keys { get { return m_keys; } }
714
internal
VarVec
Outputs { get { return m_outputs; } }
742
internal GroupByOp(
VarVec
keys,
VarVec
outputs)
781
private readonly
VarVec
m_inputs;
786
internal GroupByIntoOp(
VarVec
keys,
VarVec
inputs,
VarVec
outputs)
797
internal
VarVec
Inputs { get { return m_inputs; } }
832
private
VarVec
m_outputVars;
836
internal SetOp(OpType opType,
VarVec
outputs, VarMap left, VarMap right)
864
internal
VarVec
Outputs { get { return m_outputVars; } }
880
internal UnionAllOp(
VarVec
outputs, VarMap left, VarMap right, Var branchDiscriminator) : base(OpType.UnionAll, outputs, left, right)
921
internal IntersectOp(
VarVec
outputs, VarMap left, VarMap right) : base(OpType.Intersect, outputs, left,right) { }
953
internal ExceptOp(
VarVec
outputs, VarMap left, VarMap right) : base(OpType.Except, outputs, left, right) { }
984
private
VarVec
m_keys;
991
internal DistinctOp(
VarVec
keyVars) : this()
1010
internal
VarVec
Keys { get { return m_keys; } }
System\Data\Query\InternalTrees\Vars.cs (15)
226
internal VarVecEnumerator(
VarVec
vec)
237
internal void Init(
VarVec
vec)
311
internal void And(
VarVec
other)
317
internal void Or(
VarVec
other)
328
internal void Minus(
VarVec
other)
330
VarVec
tmp = m_command.CreateVarVec(other);
342
internal bool Overlaps(
VarVec
other)
344
VarVec
otherCopy = m_command.CreateVarVec(other);
358
internal bool Subsumes(
VarVec
other)
371
internal void InitFrom(
VarVec
other)
468
internal
VarVec
Remap(Dictionary<Var, Var> varMap)
470
VarVec
newVec = m_command.CreateVarVec();
494
private void Align(
VarVec
other)
544
public
VarVec
Clone()
546
VarVec
newVec = m_command.CreateVarVec();
System\Data\Query\PlanCompiler\CTreeGenerator.cs (2)
1518
VarVec
sortVars = _iqtCommand.CreateVarVec();
2095
private DbExpression VisitSetOpArgument(Node argNode,
VarVec
outputVars, VarMap argVars)
System\Data\Query\PlanCompiler\ITreeGenerator.cs (9)
2453
VarVec
keyVarSet = _iqtCommand.CreateVarVec();
2454
VarVec
outputVarSet = _iqtCommand.CreateVarVec();
2476
VarVec
copyOutputVarSet = _iqtCommand.CreateVarVec();
2477
VarVec
copyKeyVarSet = _iqtCommand.CreateVarVec();
2581
private void ExtractKeys(DbGroupByExpression e,
VarVec
keyVarSet,
VarVec
outputVarSet, out Node inputNode, out List<Node> keyVarDefNodes, out ExpressionBindingScope scope)
2669
private Node ProcessGroupAggregate(List<Node> keyVarDefNodes, Node copyOfInput, List<Node> copyOfkeyVarDefNodes,
VarVec
copyKeyVarSet, TypeUsage inputResultType, out Var groupAggVar)
2676
VarVec
projectOutpus = _iqtCommand.CreateVarVec();
2819
VarVec
projectedVars = _iqtCommand.CreateVarVec();
System\Data\Query\PlanCompiler\JoinGraph.cs (17)
176
private
VarVec
m_nullableColumns;
248
internal
VarVec
NullableColumns
489
private Dictionary<Var,
VarVec
> m_reverseVarMap;
518
m_reverseVarMap = new Dictionary<Var,
VarVec
>();
588
private
VarVec
GetColumnVars(
VarVec
varVec)
590
VarVec
columnVars = m_command.CreateVarVec();
656
VarVec
leftDefinitions = GetColumnVars(leftInputNodeInfo.Definitions);
657
VarVec
rightDefinitions = GetColumnVars(rightInputNodeInfo.Definitions);
1538
VarVec
oldReplacedVars;
1544
VarVec
replacedVars;
1716
VarVec
keyVars = m_command.CreateVarVec(joinEdge.Right.Table.Keys);
1807
VarVec
keyVars = m_command.CreateVarVec(joinEdge.Left.Table.Keys);
1969
VarVec
keys = null;
1972
VarVec
replacedVars;
2322
private Node BuildFilterForNullableColumns(Node inputNode,
VarVec
nonNullableColumns)
2329
VarVec
remappedVarVec = nonNullableColumns.Remap(m_varMap);
System\Data\Query\PlanCompiler\KeyPullup.cs (6)
140
VarVec
outputVars = m_command.CreateVarVec(op.Outputs);
144
VarVec
mappedKeyVec = childNodeInfo.Keys.KeyVars.Remap(varRenameMap);
234
VarVec
[] keyVarsMissingFromOutput = new
VarVec
[n.Children.Count];
247
VarVec
existingKeyVars = branchNodeInfo.Keys.KeyVars.Remap(op.VarMap[i]);
282
VarVec
branchOutputVars = m_command.CreateVarVec();
System\Data\Query\PlanCompiler\NestPullup.cs (41)
266
private
VarVec
RemapVarVec(
VarVec
varVec, Dictionary<Var, Var> varMap)
268
VarVec
newVarVec = Command.CreateVarVec(RemapVars(varVec, varMap));
366
VarVec
newOutputs = ((ProjectOp)n.Child0.Op).Outputs;
544
VarVec
newOutputVars = Command.CreateVarVec(xni.Definitions);
728
VarVec
projectOpOutputs = Command.CreateVarVec(op.Outputs);
729
VarVec
groupByOutputs = op.Outputs;
906
VarVec
nestOpCollectionOutputs = Command.CreateVarVec();
915
VarVec
newOutputVars = Command.CreateVarVec(nestOp.Outputs);
989
VarVec
externalReferences = Command.CreateVarVec();
990
VarVec
collectionReferences = Command.CreateVarVec();
1046
VarVec
outputVars = Command.CreateVarVec(op.Outputs);
1050
VarVec
newProjectVars = Command.CreateVarVec(op.Outputs);
1097
VarVec
newNestedProjectOutputs = Command.CreateVarVec(nestedNestOp.Outputs);
1116
VarVec
newNestedNestOutputs = Command.CreateVarVec(newNestedProjectOutputs);
1183
private void EnsureReferencedVarsAreRemoved(List<Node> referencedVars,
VarVec
outputVars)
1229
private void ConvertToNestOpInput(Node physicalProjectNode, Var collectionVar, List<CollectionInfo> collectionInfoList, List<Node> collectionNodes,
VarVec
externalReferences,
VarVec
collectionReferences)
1243
VarVec
flattenedElementVarVec = Command.CreateVarVec(flattenedElementVarList); // Use a VarVec to make the lookups faster
1267
VarVec
keyVars = Command.GetExtendedNodeInfo(nestOpInput).Keys.KeyVars;
1270
VarVec
keyVarsClone = keyVars.Clone();
1273
VarVec
keys = (keyVarsClone.IsEmpty) ? keyVars.Clone() : Command.CreateVarVec();
1353
VarVec
oldNestOpCollectionOutputs = Command.CreateVarVec();
1360
VarVec
oldNestOpNonCollectionOutputs = Command.CreateVarVec(nestOp.Outputs);
1364
VarVec
oldProjectOpNonCollectionOutputs = Command.CreateVarVec(projectOp.Outputs);
1368
VarVec
oldProjectOpCollectionOutputs = Command.CreateVarVec(projectOp.Outputs);
1373
VarVec
collectionsToRemove = Command.CreateVarVec(oldNestOpCollectionOutputs);
1403
VarVec
leftCorrelationVars = Command.CreateVarVec();
1411
VarVec
newProjectOpOutputs = Command.CreateVarVec(oldProjectOpNonCollectionOutputs);
1465
VarVec
nestOpOutputs = Command.CreateVarVec(projectOp.Outputs);
1634
VarVec
sortVars = Command.CreateVarVec();
1656
VarVec
sortVars = Command.CreateVarVec();
2031
VarVec
sortVars = Command.CreateVarVec();
2146
VarVec
childKeys = Command.CreateVarVec(((SingleStreamNestOp)nestNode.Children[i].Op).Keys);
2181
VarVec
drivingNodeVarVec = drivingNodeInfo.Definitions;
2216
VarVec
flattenedOutputVarVec = Command.CreateVarVec(flattenedOutputVarList);
2217
VarVec
nestOpOutputs = Command.CreateVarVec(flattenedOutputVarVec);
2244
VarVec
parentKeys = RemapVarVec(drivingNodeKeys.KeyVars, drivingNodeVarMap);
2272
VarVec
newCollectionKeys = RemapVarVec(ci.Keys, varMapList[i]);
2456
VarVec
projectOutputs = Command.CreateVarVec(inputNodeInfo.Definitions);
2570
VarVec
projectOutputsVarSet = Command.CreateVarVec(projectOutputs);
System\Data\Query\PlanCompiler\NominalTypeEliminator.cs (11)
1024
private
VarVec
FlattenVarSet(
VarVec
varSet)
1026
VarVec
newVarSet = m_command.CreateVarVec(FlattenVars(varSet));
1053
VarVec
newKeys = FlattenVarSet(op.Keys);
1075
VarVec
newKeys = FlattenVarSet(op.Keys);
1076
VarVec
newOutputs = FlattenVarSet(op.Outputs);
1103
VarVec
newKeys = FlattenVarSet(op.Keys);
1104
VarVec
newInputs = FlattenVarSet(op.Inputs);
1105
VarVec
newOutputs = FlattenVarSet(op.Outputs);
1130
VarVec
newVars = FlattenVarSet(op.Outputs);
1526
VarVec
newVarSet = m_command.CreateVarVec();
System\Data\Query\PlanCompiler\Normalizer.cs (2)
195
VarVec
keyVars = m_command.CreateVarVec(); // empty keys
198
VarVec
gbyOutputVars = m_command.CreateVarVec();
System\Data\Query\PlanCompiler\Predicate.cs (21)
136
internal Predicate GetSingleTablePredicates(
VarVec
tableDefinitions,
139
List<
VarVec
> tableDefinitionList = new List<
VarVec
>();
156
internal void GetEquiJoinPredicates(
VarVec
leftTableDefinitions,
VarVec
rightTableDefinitions,
180
internal Predicate GetJoinPredicates(
VarVec
leftTableDefinitions,
VarVec
rightTableDefinitions,
211
internal bool SatisfiesKey(
VarVec
keyVars,
VarVec
definitions)
215
VarVec
missingKeys = keyVars.Clone();
250
internal bool PreservesNulls(
VarVec
tableColumns, bool ansiNullSemantics)
290
private void GetSingleTablePredicates(List<
VarVec
> tableDefinitions,
294
foreach (
VarVec
vec in tableDefinitions)
299
VarVec
externalRefs = m_command.CreateVarVec();
308
VarVec
tableColumns = tableDefinitions[i];
378
VarVec
leftTableDefinitions,
VarVec
rightTableDefinitions,
421
private static bool PreservesNulls(Node simplePredNode,
VarVec
tableColumns)
475
private bool IsKeyPredicate(Node left, Node right,
VarVec
keyVars,
VarVec
definitions, out Var keyVar)
496
VarVec
otherVarExternalReferences = otherNodeInfo.ExternalReferences.Clone();
System\Data\Query\PlanCompiler\ProjectionPruner.cs (9)
65
private class ColumnMapVarTracker : ColumnMapVisitor<
VarVec
>
77
internal static void FindVars(ColumnMap columnMap,
VarVec
vec)
80
columnMap.Accept<
VarVec
>(tracker, vec);
98
internal override void Visit(VarRefColumnMap columnMap,
VarVec
arg)
111
private
VarVec
m_referencedVars; // the list of referenced vars in the query
239
private void PruneVarSet(
VarVec
varSet)
529
private void RemoveRedundantConstantKeys(
VarVec
keyVec,
VarVec
outputVec, Node varDefListNode)
535
VarVec
constantKeyVars = this.m_command.CreateVarVec(constantKeys.Select(d => ((VarDefOp)d.Op).Var));
System\Data\Query\PlanCompiler\TransformationRules.cs (12)
415
private readonly
VarVec
m_remappedVars;
1390
private static Node GetPushdownPredicate(Command command, Node filterNode,
VarVec
columns, out Node nonPushdownPredicateNode)
2031
VarVec
newVars = trc.Command.CreateVarVec();
2648
VarVec
vec = command.CreateVarVec(projectOp.Outputs);
2934
VarVec
projectOpOutputs = command.CreateVarVec(applyLeftChildNodeInfo.Definitions);
3408
VarVec
newVarSet = command.CreateVarVec();
3479
VarVec
vec = command.CreateVarVec(projectOp.Outputs);
3991
VarVec
projectDefinitions = command.GetExtendedNodeInfo(projectNode).LocalDefinitions;
4102
private
VarVec
m_varVec;
4103
private
VarVec
m_usedVars;
4105
private VarRefUsageFinder(
VarVec
varVec, Command command)
4119
internal static bool AnyVarUsedMoreThanOnce(
VarVec
varVec, Node root, Command command)
System\Data\Query\PlanCompiler\VarRefManager.cs (7)
71
internal bool HasKeyReferences(
VarVec
keys, Node definingNode, Node targetJoinNode)
117
private static bool HasVarReferencesShallow(Node node,
VarVec
vars, int childIndex, out bool continueUp)
160
private static bool HasVarReferences(VarList listToCheck,
VarVec
vars)
178
private static bool HasVarReferences(
VarVec
listToCheck,
VarVec
vars)
189
private static bool HasVarReferences(List<InternalTrees.SortKey> listToCheck,
VarVec
vars)
209
private static bool HasVarReferences(SetOp op,
VarVec
vars, int index)
System\Data\Query\PlanCompiler\VarRemapper.cs (3)
162
private void Map(
VarVec
vec)
164
VarVec
newVec = m_command.CreateVarVec(MapVars(vec));
191
VarVec
sortVars = m_command.CreateVarVec();