4 instantiations of OptimizerPatterns
System.Data.SqlXml (4)
System\Xml\Xsl\IlGen\OptimizerPatterns.cs (4)
78optPatt = new OptimizerPatterns(); 91optPatt = new OptimizerPatterns(); 103optPatt = new OptimizerPatterns(); 125optPatt = new OptimizerPatterns();
177 references to OptimizerPatterns
System.Data.SqlXml (177)
System\Xml\Xsl\IlGen\OptimizerPatterns.cs (11)
63private static volatile OptimizerPatterns ZeroOrOneDefault; 64private static volatile OptimizerPatterns MaybeManyDefault; 65private static volatile OptimizerPatterns DodDefault; 70public static OptimizerPatterns Read(QilNode nd) { 72OptimizerPatterns optPatt = (ann != null) ? ann.Patterns : null; 120public static OptimizerPatterns Write(QilNode nd) { 122OptimizerPatterns optPatt = ann.Patterns; 144OptimizerPatterns annSrc = OptimizerPatterns.Read(ndSrc); 147OptimizerPatterns annDst = OptimizerPatterns.Write(ndDst);
System\Xml\Xsl\IlGen\TailCallAnalyzer.cs (1)
45OptimizerPatterns.Write(nd).AddPattern(OptimizerPatternName.TailCall);
System\Xml\Xsl\IlGen\XmlILAnnotation.cs (2)
22private OptimizerPatterns optPatt; 93public OptimizerPatterns Patterns {
System\Xml\Xsl\IlGen\XmlILOptimizerVisitor.cs (145)
133OptimizerPatterns.Write(newNode).AddPattern(OptimizerPatternName.IsReferenced); 165OptimizerPatterns.Write(node).AddPattern(OptimizerPatternName.MaybeSideEffects); 186if (OptimizerPatterns.Read(node[i]).MatchesPattern(OptimizerPatternName.MaybeSideEffects)) 247OptimizerPatterns.Inherit((QilNode) (local1), (QilNode) (local0), OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Inherit((QilNode) (local1), (QilNode) (local0), OptimizerPatternName.SameDepth); } 329OptimizerPatterns.Inherit((QilNode) (local1), (QilNode) (local0), OptimizerPatternName.Step); OptimizerPatterns.Inherit((QilNode) (local1), (QilNode) (local0), OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Inherit((QilNode) (local1), (QilNode) (local0), OptimizerPatternName.SameDepth); } 358OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.IsPositional); } 617if (( ( (local1).XmlType ).IsSingleton ) && ( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) )) { 729OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); } 733if ((( IsStepPattern(local2, QilNodeType.Content) ) || ( IsStepPattern(local2, QilNodeType.Union) )) && ( ( OptimizerPatterns.Read((QilNode) (local1)).GetArgument(OptimizerPatternArgument.StepInput) ) == ( OptimizerPatterns.Read((QilNode) (local2)).GetArgument(OptimizerPatternArgument.StepInput) ) )) { 736AddStepPattern((QilNode) (local0), (QilNode) ( OptimizerPatterns.Read((QilNode) (local1)).GetArgument(OptimizerPatternArgument.StepInput) )); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); } 811OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); } 884OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); } 1394OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.MaxPosition); OptimizerPatterns.Write((QilNode) (local1)).AddArgument(OptimizerPatternArgument.MaxPosition, local4); } 1593OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.MaxPosition); OptimizerPatterns.Write((QilNode) (local1)).AddArgument(OptimizerPatternArgument.MaxPosition, local4); } 1676OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.MaxPosition); OptimizerPatterns.Write((QilNode) (local1)).AddArgument(OptimizerPatternArgument.MaxPosition, local4); } 1745OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.MaxPosition); OptimizerPatterns.Write((QilNode) (local1)).AddArgument(OptimizerPatternArgument.MaxPosition, local4); } 1814OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.MaxPosition); OptimizerPatterns.Write((QilNode) (local1)).AddArgument(OptimizerPatternArgument.MaxPosition, local4); } 1883OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.MaxPosition); OptimizerPatterns.Write((QilNode) (local1)).AddArgument(OptimizerPatternArgument.MaxPosition, local4); } 2001if ( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.IsPositional) ) { 2024if ( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) ) { 2058if ((( (local1).NodeType == QilNodeType.Let ) || ( ( ( (QilNode) (local1)[0] ).XmlType ).IsSingleton )) && ( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) )) { 2163OptimizerPatterns.Inherit((QilNode) (local2), (QilNode) (local0), OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Inherit((QilNode) (local2), (QilNode) (local0), OptimizerPatternName.SameDepth); } 2171OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); } 2177if ( OptimizerPatterns.Read((QilNode) (local3)).MatchesPattern(OptimizerPatternName.SameDepth) ) { 2178if ((( IsStepPattern(local2, QilNodeType.Content) ) || ( IsStepPattern(local2, QilNodeType.Union) )) && ( (local1) == ( OptimizerPatterns.Read((QilNode) (local2)).GetArgument(OptimizerPatternArgument.StepInput) ) )) { 2181OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); OptimizerPatterns.Inherit((QilNode) (local3), (QilNode) (local0), OptimizerPatternName.IsDocOrderDistinct); } 2189if (((( IsStepPattern(local2, QilNodeType.Attribute) ) || ( IsStepPattern(local2, QilNodeType.XPathNamespace) )) || ( OptimizerPatterns.Read((QilNode) (local2)).MatchesPattern(OptimizerPatternName.FilterAttributeKind) )) && ( (local1) == ( OptimizerPatterns.Read((QilNode) (local2)).GetArgument(OptimizerPatternArgument.StepInput) ) )) { 2192OptimizerPatterns.Inherit((QilNode) (local3), (QilNode) (local0), OptimizerPatternName.SameDepth); OptimizerPatterns.Inherit((QilNode) (local3), (QilNode) (local0), OptimizerPatternName.IsDocOrderDistinct); } 2199if ( OptimizerPatterns.Read((QilNode) (local3)).MatchesPattern(OptimizerPatternName.SameDepth) ) { 2200if ((( IsStepPattern(local2, QilNodeType.Descendant) ) || ( IsStepPattern(local2, QilNodeType.DescendantOrSelf) )) && ( (local1) == ( OptimizerPatterns.Read((QilNode) (local2)).GetArgument(OptimizerPatternArgument.StepInput) ) )) { 2203OptimizerPatterns.Inherit((QilNode) (local3), (QilNode) (local0), OptimizerPatternName.IsDocOrderDistinct); } 2231if ( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) ) { 2303if (( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) ) && (!( ( (QilNode) (local1)[0] ).NodeType == QilNodeType.OptimizeBarrier ))) { 2304if ((!(DependsOn(local2,local1))) && ( !OptimizerPatterns.Read(local2).MatchesPattern(OptimizerPatternName.MaybeSideEffects) )) { 2323OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.MaxPosition); OptimizerPatterns.Write((QilNode) (local1)).AddArgument(OptimizerPatternArgument.MaxPosition, local6); } 2340OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.MaxPosition); OptimizerPatterns.Write((QilNode) (local1)).AddArgument(OptimizerPatternArgument.MaxPosition, local6); } 2357OptimizerPatterns.Write((QilNode) (local1)).AddPattern(OptimizerPatternName.MaxPosition); OptimizerPatterns.Write((QilNode) (local1)).AddArgument(OptimizerPatternArgument.MaxPosition, local6 - 1 ); } 2368OptimizerPatterns.Inherit((QilNode) (local3), (QilNode) (local0), OptimizerPatternName.Step); OptimizerPatterns.Inherit((QilNode) (local3), (QilNode) (local0), OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Inherit((QilNode) (local3), (QilNode) (local0), OptimizerPatternName.SameDepth); } 2374if ( OptimizerPatterns.Read((QilNode) (local3)).MatchesPattern(OptimizerPatternName.Axis) ) { 2394OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.FilterElements); OptimizerPatterns.Write((QilNode) (local0)).AddArgument(OptimizerPatternArgument.ElementQName, local11); } 2410if ( OptimizerPatterns.Read((QilNode) (local3)).MatchesPattern(OptimizerPatternName.Axis) ) { 2420OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.FilterContentKind); OptimizerPatterns.Write((QilNode) (local0)).AddArgument(OptimizerPatternArgument.KindTestType, local6); } 2441OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.FilterAttributeKind); } 2533if ((( OptimizerPatterns.Read((QilNode) (local7)).MatchesPattern(OptimizerPatternName.FilterElements) ) || ( OptimizerPatterns.Read((QilNode) (local7)).MatchesPattern(OptimizerPatternName.FilterContentKind) )) && ( IsStepPattern(local7, QilNodeType.Content) )) { 2557if ((( OptimizerPatterns.Read((QilNode) (local5)).MatchesPattern(OptimizerPatternName.FilterElements) ) || ( OptimizerPatterns.Read((QilNode) (local5)).MatchesPattern(OptimizerPatternName.FilterContentKind) )) && ( IsStepPattern(local5, QilNodeType.Content) )) { 2575if ( !OptimizerPatterns.Read(local2).MatchesPattern(OptimizerPatternName.IsPositional) ) { 2576if (((!( OptimizerPatterns.Read((QilNode) (local1)).MatchesPattern(OptimizerPatternName.FilterElements) )) && (!( OptimizerPatterns.Read((QilNode) (local1)).MatchesPattern(OptimizerPatternName.FilterContentKind) ))) && (!( OptimizerPatterns.Read((QilNode) (local1)).MatchesPattern(OptimizerPatternName.FilterAttributeKind) ))) { 2596if ( !OptimizerPatterns.Read(local4).MatchesPattern(OptimizerPatternName.IsPositional) ) { 2598if (((!( OptimizerPatterns.Read((QilNode) (local3)).MatchesPattern(OptimizerPatternName.FilterElements) )) && (!( OptimizerPatterns.Read((QilNode) (local3)).MatchesPattern(OptimizerPatternName.FilterContentKind) ))) && (!( OptimizerPatterns.Read((QilNode) (local3)).MatchesPattern(OptimizerPatternName.FilterAttributeKind) ))) { 2618if (( !OptimizerPatterns.Read(local2).MatchesPattern(OptimizerPatternName.IsPositional) ) && ( (local3).XmlType .IsSubtypeOf( XmlQueryTypeFactory.NodeNotRtfS ) )) { 2619if (((!( OptimizerPatterns.Read((QilNode) (local1)).MatchesPattern(OptimizerPatternName.FilterElements) )) && (!( OptimizerPatterns.Read((QilNode) (local1)).MatchesPattern(OptimizerPatternName.FilterContentKind) ))) && (!( OptimizerPatterns.Read((QilNode) (local1)).MatchesPattern(OptimizerPatternName.FilterAttributeKind) ))) { 2661OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Inherit((QilNode) (local1), (QilNode) (local0), OptimizerPatternName.SameDepth); } 2667OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.DodReverse); OptimizerPatterns.Write((QilNode) (local0)).AddArgument(OptimizerPatternArgument.DodStep, local1); } 2677if (( AllowJoinAndDod(local4) ) && ( (local2) == ( OptimizerPatterns.Read((QilNode) (local4)).GetArgument(OptimizerPatternArgument.StepInput) ) )) { 2680OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.JoinAndDod); OptimizerPatterns.Write((QilNode) (local0)).AddArgument(OptimizerPatternArgument.DodStep, local4); } 2693OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.DodMerge); } 2746OptimizerPatterns patt = OptimizerPatterns.Write(local2); 2785OptimizerPatterns patt = OptimizerPatterns.Write(local2); 2828OptimizerPatterns.Inherit((QilNode) (local4), (QilNode) (local0), OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Inherit((QilNode) (local4), (QilNode) (local0), OptimizerPatternName.SameDepth); } 2850AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); } 2877OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); } 2895OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); } 2913OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); } 2931OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); } 2949OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); } 2967OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); } 2985OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); } 3003OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); } 3021OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); } 3039OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); } 3066OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); } 3314OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SingleTextRtf); OptimizerPatterns.Write((QilNode) (local0)).AddArgument(OptimizerPatternArgument.RtfText, local3); 3440if ( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) ) { 3453if ( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) ) { 3477if (!( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) )) { 3490if (!( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) )) { 3526if (( !( (local1).XmlType ).MaybeEmpty ) && ( !OptimizerPatterns.Read(local1).MatchesPattern(OptimizerPatternName.MaybeSideEffects) )) { 3573OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); } 3591OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); } 3609OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.Axis); AddStepPattern((QilNode) (local0), (QilNode) (local1)); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.IsDocOrderDistinct); OptimizerPatterns.Write((QilNode) (local0)).AddPattern(OptimizerPatternName.SameDepth); } 4052OptimizerPatterns patt = OptimizerPatterns.Read(nd); 4070OptimizerPatterns patt = OptimizerPatterns.Read(nd); 4291OptimizerPatterns patt = OptimizerPatterns.Write(nd); 4301return OptimizerPatterns.Read(nd).MatchesPattern(OptimizerPatternName.IsDocOrderDistinct); 4308return IsStepPattern(OptimizerPatterns.Read(nd), stepType); 4314private bool IsStepPattern(OptimizerPatterns patt, QilNodeType stepType) { 4336OptimizerPatterns optPatt = OptimizerPatterns.Read(nd);
System\Xml\Xsl\IlGen\XmlIlVisitor.cs (17)
998OptimizerPatterns patt = OptimizerPatterns.Read(ndSetLen); 1772OptimizerPatterns patt = OptimizerPatterns.Read(ndFilter); 1953OptimizerPatterns patt = OptimizerPatterns.Read(ndIter); 1980private void StartForBinding(QilIterator ndFor, OptimizerPatterns patt) { 2236OptimizerPatterns pattDod = OptimizerPatterns.Read(ndDod); 2245OptimizerPatterns pattStep = OptimizerPatterns.Read((QilNode) pattDod.GetArgument(OptimizerPatternArgument.DodStep)); 2380if (OptimizerPatterns.Read(ndInvoke).MatchesPattern(OptimizerPatternName.TailCall)) 2826OptimizerPatterns patt = OptimizerPatterns.Read(ndRtf); 4548OptimizerPatterns patt; 4560patt = OptimizerPatterns.Read(nd); 4568patt = OptimizerPatterns.Read(nd);
System\Xml\Xsl\XmlIlGenerator.cs (1)
318if (this.qil.IsDebug || OptimizerPatterns.Read(ndIter).MatchesPattern(OptimizerPatternName.MaybeSideEffects)) {