1 write to helper
System.Data.SqlXml (1)
System\Xml\Xsl\IlGen\XmlIlVisitor.cs (1)
48
this.
helper
= helper;
512 references to helper
System.Data.SqlXml (512)
System\Xml\Xsl\IlGen\XmlIlVisitor.cs (512)
67
this.
helper
.MethodBegin(methRoot, null, true);
72
this.
helper
.MethodEnd();
92
iterInfo = new IteratorDescriptor(this.
helper
);
120
idxValue = this.
helper
.StaticData.DeclareGlobalValue(iter.DebugName);
123
this.
helper
.MethodBegin(methGlobal, iter.SourceLine, false);
125
lblGetGlobal = this.
helper
.DefineLabel();
126
lblComputeGlobal = this.
helper
.DefineLabel();
129
this.
helper
.LoadQueryRuntime();
130
this.
helper
.LoadInteger(idxValue);
131
this.
helper
.Call(XmlILMethods.GlobalComputed);
132
this.
helper
.Emit(OpCodes.Brtrue, lblGetGlobal);
142
LocalBuilder locParam = this.
helper
.DeclareLocal("$$$param", typeof(object));
143
this.
helper
.CallGetParameter(param.Name.LocalName, param.Name.NamespaceUri);
144
this.
helper
.Emit(OpCodes.Stloc, locParam);
145
this.
helper
.Emit(OpCodes.Ldloc, locParam);
146
this.
helper
.Emit(OpCodes.Brfalse, lblComputeGlobal);
150
this.
helper
.LoadQueryRuntime();
151
this.
helper
.LoadInteger(idxValue);
153
this.
helper
.LoadQueryRuntime();
154
this.
helper
.LoadInteger(this.
helper
.StaticData.DeclareXmlType(XmlQueryTypeFactory.ItemS));
155
this.
helper
.Emit(OpCodes.Ldloc, locParam);
156
this.
helper
.Call(XmlILMethods.ChangeTypeXsltResult);
158
this.
helper
.CallSetGlobalValue(typeof(object));
161
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, lblGetGlobal);
165
this.
helper
.MarkLabel(lblComputeGlobal);
169
this.
helper
.LoadQueryRuntime();
170
this.
helper
.LoadInteger(idxValue);
175
this.
helper
.CallSetGlobalValue(GetStorageType(iter));
181
this.
helper
.LoadQueryRuntime();
182
this.
helper
.Emit(OpCodes.Ldstr, Res.GetString(Res.XmlIl_UnknownParam, new string[] {param.Name.LocalName, param.Name.NamespaceUri}));
183
this.
helper
.Call(XmlILMethods.ThrowException);
190
this.
helper
.MarkLabel(lblGetGlobal);
191
this.
helper
.CallGetGlobalValue(idxValue, GetStorageType(iter));
193
this.
helper
.MethodEnd();
211
iterInfo = new IteratorDescriptor(this.
helper
);
227
this.
helper
.MethodBegin(methFunc, ndFunc.SourceLine, useWriter);
232
this.
helper
.DebugSequencePoint(iter.SourceLine);
240
Label lblLocalComputed = this.
helper
.DefineLabel();
241
this.
helper
.LoadQueryRuntime();
242
this.
helper
.LoadParameter(paramId);
243
this.
helper
.LoadInteger((int)XmlTypeCode.QName);
244
this.
helper
.Call(XmlILMethods.SeqMatchesCode);
246
this.
helper
.Emit(OpCodes.Brfalse, lblLocalComputed);
253
this.
helper
.SetParameter(paramId);
254
this.
helper
.MarkLabel(lblLocalComputed);
268
this.
helper
.MethodEnd();
284
this.
helper
.DebugSequencePoint(nd.SourceLine);
325
this.
helper
.CallStartSequenceConstruction();
331
this.
helper
.CallEndSequenceConstruction();
347
this.
helper
.LoadQueryOutput();
361
this.
helper
.LoadQueryOutput();
366
this.
helper
.Call(XmlILMethods.WriteItem);
381
this.
helper
.LoadQueryContext();
384
this.
helper
.Call(XmlILMethods.GetDataSource);
386
locNav = this.
helper
.DeclareLocal("$$$navDoc", typeof(XPathNavigator));
387
this.
helper
.Emit(OpCodes.Stloc, locNav);
390
this.
helper
.Emit(OpCodes.Ldloc, locNav);
391
this.
helper
.Emit(OpCodes.Brfalse, this.iterCurr.GetLabelNext());
417
this.
helper
.LoadQueryRuntime();
419
this.
helper
.Call(XmlILMethods.ThrowException);
426
this.
helper
.Emit(OpCodes.Ldnull);
438
this.
helper
.LoadQueryRuntime();
440
this.
helper
.Call(XmlILMethods.SendMessage);
462
this.
helper
.EmitUnconditionalBranch(this.iterCurr.CurrentBranchingContext == BranchingContext.OnTrue ?
469
this.
helper
.LoadBoolean(true);
488
this.
helper
.EmitUnconditionalBranch(this.iterCurr.CurrentBranchingContext == BranchingContext.OnFalse ?
495
this.
helper
.LoadBoolean(false);
506
this.
helper
.Emit(OpCodes.Ldstr, (string) ndStr);
515
this.
helper
.LoadInteger((int) ndInt);
524
this.
helper
.Emit(OpCodes.Ldc_I8, (long) ndLong);
533
this.
helper
.Emit(OpCodes.Ldc_R8, (double) ndDbl);
542
this.
helper
.ConstructLiteralDecimal((decimal) ndDec);
551
this.
helper
.ConstructLiteralQName(ndQName.LocalName, ndQName.NamespaceUri);
618
lblOnFalse = this.
helper
.DefineLabel();
649
this.
helper
.MarkLabel(lblOnFalse);
658
this.
helper
.ConvBranchToBool(lblOnFalse, false);
695
lblTemp = this.
helper
.DefineLabel();
707
lblTemp = this.
helper
.DefineLabel();
735
this.
helper
.MarkLabel(lblTemp);
744
this.
helper
.ConvBranchToBool(lblTemp, true);
788
lblTemp = this.
helper
.DefineLabel();
795
this.
helper
.ConvBranchToBool(lblTemp, false);
815
lblFalse = this.
helper
.DefineLabel();
824
this.
helper
.MarkLabel(lblFalse);
829
lblDone = this.
helper
.DefineLabel();
830
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, lblDone);
833
this.
helper
.MarkLabel(lblFalse);
836
this.
helper
.MarkLabel(lblDone);
850
lblFalse = this.
helper
.DefineLabel();
859
locCond = this.
helper
.DeclareLocal("$$$cond", itemStorageType);
860
locBool = this.
helper
.DeclareLocal("$$$boolResult", typeof(bool));
864
this.
helper
.Emit(OpCodes.Ldloc, locBool);
865
this.
helper
.Emit(OpCodes.Brfalse, lblFalse);
873
lblDone = this.
helper
.DefineLabel();
874
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, lblDone);
878
this.
helper
.MarkLabel(lblFalse);
887
this.
helper
.EmitUnconditionalBranch(OpCodes.Brtrue, lblDone);
890
lblNext = this.
helper
.DefineLabel();
891
this.
helper
.MarkLabel(lblNext);
894
this.
helper
.Emit(OpCodes.Ldloc, locBool);
895
this.
helper
.Emit(OpCodes.Brtrue, iterInfoTrue.GetLabelNext());
896
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, this.iterNested.GetLabelNext());
902
this.
helper
.MarkLabel(lblDone);
950
switchLabels[idx] = this.
helper
.DefineLabel();
952
lblOtherwise = this.
helper
.DefineLabel();
953
lblDone = this.
helper
.DefineLabel();
960
this.
helper
.Emit(OpCodes.Switch, switchLabels);
961
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, lblOtherwise);
965
this.
helper
.MarkLabel(switchLabels[idx]);
971
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, lblDone);
975
this.
helper
.MarkLabel(lblOtherwise);
981
this.
helper
.MarkLabel(lblDone);
997
Label lblOnEnd = this.
helper
.DefineLabel();
1002
this.
helper
.CallCacheCount(this.iterNested.Storage.ItemStorageType);
1006
this.
helper
.Emit(OpCodes.Ldc_I4_0);
1018
this.
helper
.Emit(OpCodes.Ldc_I4_1);
1019
this.
helper
.Emit(OpCodes.Add);
1023
this.
helper
.Emit(OpCodes.Dup);
1024
this.
helper
.LoadInteger((int) patt.GetArgument(OptimizerPatternArgument.MaxPosition));
1025
this.
helper
.Emit(OpCodes.Bgt, lblOnEnd);
1067
this.
helper
.EmitUnconditionalBranch(OpCodes.Brtrue, this.iterCurr.GetLabelNext());
1070
this.
helper
.Emit(OpCodes.Ldnull);
1093
lblOnEnd = this.
helper
.DefineLabel();
1096
this.
helper
.MarkLabel(lblOnEnd);
1104
locList = this.
helper
.DeclareLocal("$$$itemList", itemStorageType);
1105
locIdx = this.
helper
.DeclareLocal("$$$idxList", typeof(int));
1108
lblStart = this.
helper
.DefineLabel();
1114
this.
helper
.MarkLabel(lblOnEnd);
1120
lblOnEnd = this.
helper
.DefineLabel();
1123
this.
helper
.LoadInteger(i);
1124
this.
helper
.Emit(OpCodes.Stloc, locIdx);
1138
this.
helper
.EmitUnconditionalBranch(OpCodes.Brtrue, lblStart);
1142
lblNext = this.
helper
.DefineLabel();
1143
this.
helper
.MarkLabel(lblNext);
1149
this.
helper
.Emit(OpCodes.Ldloc, locIdx);
1150
this.
helper
.Emit(OpCodes.Switch, arrSwitchLabels);
1153
this.
helper
.MarkLabel(lblStart);
1189
locIter = this.
helper
.DeclareLocal(iterName, iterType);
1190
locNav = this.
helper
.DeclareLocal("$$$navSet", typeof(XPathNavigator));
1193
this.
helper
.Emit(OpCodes.Ldloca, locIter);
1194
this.
helper
.LoadQueryRuntime();
1195
this.
helper
.Call(methCreate);
1198
lblNext = this.
helper
.DefineLabel();
1199
lblCall = this.
helper
.DefineLabel();
1200
lblInitRight = this.
helper
.DefineLabel();
1207
this.
helper
.EmitUnconditionalBranch(OpCodes.Brtrue, lblCall);
1212
this.
helper
.MarkLabel(lblInitRight);
1216
this.
helper
.EmitUnconditionalBranch(OpCodes.Brtrue, lblCall);
1219
this.
helper
.MarkLabel(lblNext);
1220
this.
helper
.Emit(OpCodes.Ldnull);
1221
this.
helper
.Emit(OpCodes.Stloc, locNav);
1230
this.
helper
.MarkLabel(lblCall);
1231
this.
helper
.Emit(OpCodes.Ldloca, locIter);
1232
this.
helper
.Emit(OpCodes.Ldloc, locNav);
1233
this.
helper
.Call(methNext);
1238
this.
helper
.Emit(OpCodes.Switch, new Label[] {lblInitRight, lblNextLeft, lblNextRight});
1242
this.
helper
.Emit(OpCodes.Switch, new Label[] {this.iterCurr.GetLabelNext(), lblInitRight, lblNextLeft, lblNextRight});
1285
Label lblOnEnd = this.
helper
.DefineLabel();
1291
locAgg = this.
helper
.DeclareLocal(aggName, typAgg);
1292
this.
helper
.Emit(OpCodes.Ldloca, locAgg);
1293
this.
helper
.Call(methods.AggCreate);
1297
this.
helper
.Emit(OpCodes.Ldloca, locAgg);
1303
this.
helper
.Call(methAgg);
1304
this.
helper
.Emit(OpCodes.Ldloca, locAgg);
1315
this.
helper
.Call(methods.AggIsEmpty);
1316
this.
helper
.Emit(OpCodes.Brtrue, this.iterCurr.GetLabelNext());
1317
this.
helper
.Emit(OpCodes.Ldloca, locAgg);
1321
this.
helper
.Call(methResult);
1332
this.
helper
.CallArithmeticOp(QilNodeType.Negate, ndNeg.XmlType.TypeCode);
1377
this.
helper
.CallArithmeticOp(ndOp.NodeType, ndOp.XmlType.TypeCode);
1387
this.
helper
.Call(XmlILMethods.StrLen);
1426
this.
helper
.CallConcatStrings(listStrings.Count);
1430
locStringConcat = this.
helper
.DeclareLocal("$$$strcat", typeof(StringConcat));
1431
this.
helper
.Emit(OpCodes.Ldloca, locStringConcat);
1432
this.
helper
.Call(XmlILMethods.StrCatClear);
1436
this.
helper
.Emit(OpCodes.Ldloca, locStringConcat);
1438
this.
helper
.Call(XmlILMethods.StrCatDelim);
1441
this.
helper
.Emit(OpCodes.Ldloca, locStringConcat);
1452
this.
helper
.Call(XmlILMethods.StrCatResult);
1467
lblOnEnd = this.
helper
.DefineLabel();
1474
this.
helper
.Call(XmlILMethods.StrCatCat);
1475
this.
helper
.Emit(OpCodes.Ldloca, locStringConcat);
1500
this.
helper
.LoadQueryRuntime();
1512
this.
helper
.CallParseTagName(GenerateNameType.TagNameAndNamespace);
1517
this.
helper
.LoadInteger(this.
helper
.StaticData.DeclarePrefixMappings(ndParsedTagName.Right));
1519
this.
helper
.LoadInteger(this.
helper
.StaticData.DeclarePrefixMappings(new QilNode[] {ndParsedTagName.Right}));
1523
this.
helper
.CallParseTagName(GenerateNameType.TagNameAndMappings);
1612
this.
helper
.CallCompareEquals(code);
1622
this.
helper
.CallCompare(code);
1625
this.
helper
.Emit(OpCodes.Ldc_I4_0);
1649
this.
helper
.Call(XmlILMethods.NavSamePos);
1677
this.
helper
.LoadQueryRuntime();
1679
this.
helper
.Call(XmlILMethods.CompPos);
1682
this.
helper
.LoadInteger(0);
1799
locIter = this.
helper
.DeclareLocal("$$$iterElemContent", typeof(ElementContentIterator));
1802
this.
helper
.Emit(OpCodes.Ldloca, locIter);
1804
this.
helper
.CallGetAtomizedName(this.
helper
.StaticData.DeclareName(name.LocalName));
1805
this.
helper
.CallGetAtomizedName(this.
helper
.StaticData.DeclareName(name.NamespaceUri));
1806
this.
helper
.Call(XmlILMethods.ElemContentCreate);
1816
locIter = this.
helper
.DeclareLocal("$$$iterContent", typeof(NodeKindContentIterator));
1819
this.
helper
.Emit(OpCodes.Ldloca, locIter);
1821
this.
helper
.LoadInteger((int) QilXmlToXPathNodeType(kinds));
1822
this.
helper
.Call(XmlILMethods.KindContentCreate);
1889
Label lblOnEnd = this.
helper
.DefineLabel();
1890
Label lblLookup = this.
helper
.DefineLabel();
1896
LocalBuilder locIndex = this.
helper
.DeclareLocal("$$$index", typeof(XmlILIndex));
1897
this.
helper
.LoadQueryRuntime();
1898
this.
helper
.Emit(OpCodes.Ldarg_1);
1899
this.
helper
.LoadInteger(this.indexId);
1900
this.
helper
.Emit(OpCodes.Ldloca, locIndex);
1901
this.
helper
.Call(XmlILMethods.FindIndex);
1902
this.
helper
.Emit(OpCodes.Brtrue, lblLookup);
1905
this.
helper
.LoadQueryRuntime();
1906
this.
helper
.Emit(OpCodes.Ldarg_1);
1907
this.
helper
.LoadInteger(this.indexId);
1908
this.
helper
.Emit(OpCodes.Ldloc, locIndex);
1922
this.
helper
.Call(XmlILMethods.IndexAdd);
1923
this.
helper
.Emit(OpCodes.Ldloc, locIndex);
1931
this.
helper
.Call(XmlILMethods.AddNewIndex);
1935
this.
helper
.MarkLabel(lblLookup);
1936
this.
helper
.Emit(OpCodes.Ldloc, locIndex);
1937
this.
helper
.Emit(OpCodes.Ldarg_2);
1938
this.
helper
.Call(XmlILMethods.IndexLookup);
1958
this.
helper
.DebugSequencePoint(ndIter.SourceLine);
1992
locPos = this.
helper
.DeclareLocal("$$$pos", typeof(int));
1993
this.
helper
.Emit(OpCodes.Ldc_I4_0);
1994
this.
helper
.Emit(OpCodes.Stloc, locPos);
2003
this.
helper
.DebugStartScope();
2016
this.
helper
.Emit(OpCodes.Ldloc, locPos);
2017
this.
helper
.Emit(OpCodes.Ldc_I4_1);
2018
this.
helper
.Emit(OpCodes.Add);
2019
this.
helper
.Emit(OpCodes.Stloc, locPos);
2023
this.
helper
.Emit(OpCodes.Ldloc, locPos);
2024
this.
helper
.LoadInteger((int) patt.GetArgument(OptimizerPatternArgument.MaxPosition));
2025
this.
helper
.Emit(OpCodes.Bgt, this.iterCurr.ParentIterator.GetLabelNext());
2050
this.
helper
.DebugStartScope();
2072
this.
helper
.DebugEndScope();
2096
Label lblOnEndSort = this.
helper
.DefineLabel();
2102
locCache = this.
helper
.DeclareLocal("$$$cache", methods.SeqType);
2103
this.
helper
.Emit(OpCodes.Ldloc, locCache);
2104
this.
helper
.CallToken(methods.SeqReuse);
2105
this.
helper
.Emit(OpCodes.Stloc, locCache);
2106
this.
helper
.Emit(OpCodes.Ldloc, locCache);
2110
locKeys = this.
helper
.DeclareLocal("$$$keys", typeof(XmlSortKeyAccumulator));
2111
this.
helper
.Emit(OpCodes.Ldloca, locKeys);
2112
this.
helper
.Call(XmlILMethods.SortKeyCreate);
2123
this.
helper
.Call(methods.SeqAdd);
2125
this.
helper
.Emit(OpCodes.Ldloca, locKeys);
2132
this.
helper
.Call(XmlILMethods.SortKeyFinish);
2135
this.
helper
.Emit(OpCodes.Ldloc, locCache);
2139
this.
helper
.Emit(OpCodes.Pop);
2142
this.
helper
.Emit(OpCodes.Ldloc, locCache);
2143
this.
helper
.Emit(OpCodes.Ldloca, locKeys);
2144
this.
helper
.Call(XmlILMethods.SortKeyKeys);
2145
this.
helper
.Call(methods.SeqSortByKeys);
2164
this.
helper
.Emit(OpCodes.Ldloca, locKeys);
2167
this.
helper
.CallGetCollation(this.
helper
.StaticData.DeclareCollation((string) (QilLiteral) ndKey.Collation));
2171
this.
helper
.LoadQueryRuntime();
2173
this.
helper
.Call(XmlILMethods.CreateCollation);
2180
this.
helper
.AddSortKey(ndKey.Key.XmlType);
2183
lblOnEndKey = this.
helper
.DefineLabel();
2191
this.
helper
.AddSortKey(ndKey.Key.XmlType);
2195
Label lblDone = this.
helper
.DefineLabel();
2196
this.
helper
.EmitUnconditionalBranch(OpCodes.Br_S, lblDone);
2197
this.
helper
.MarkLabel(lblOnEndKey);
2201
this.
helper
.AddSortKey(null);
2203
this.
helper
.MarkLabel(lblDone);
2223
this.
helper
.LoadQueryRuntime();
2226
this.
helper
.Call(XmlILMethods.DocOrder);
2324
LocalBuilder locMerge = this.
helper
.DeclareLocal("$$$dodMerge", typeof(DodSequenceMerge));
2325
Label lblOnEnd = this.
helper
.DefineLabel();
2328
this.
helper
.Emit(OpCodes.Ldloca, locMerge);
2329
this.
helper
.LoadQueryRuntime();
2330
this.
helper
.Call(XmlILMethods.DodMergeCreate);
2331
this.
helper
.Emit(OpCodes.Ldloca, locMerge);
2341
this.
helper
.Call(XmlILMethods.DodMergeAdd);
2342
this.
helper
.Emit(OpCodes.Ldloca, locMerge);
2350
this.
helper
.Call(XmlILMethods.DodMergeSeq);
2370
this.
helper
.LoadQueryRuntime();
2381
this.
helper
.TailCall(methInfo);
2383
this.
helper
.Call(methInfo);
2413
LocalBuilder locNav = this.
helper
.DeclareLocal("$$$navAttr", typeof(XPathNavigator));
2419
this.
helper
.Emit(OpCodes.Ldloc, locNav);
2420
this.
helper
.CallGetAtomizedName(this.
helper
.StaticData.DeclareName(ndName.LocalName));
2421
this.
helper
.CallGetAtomizedName(this.
helper
.StaticData.DeclareName(ndName.NamespaceUri));
2422
this.
helper
.Call(XmlILMethods.NavMoveAttr);
2423
this.
helper
.Emit(OpCodes.Brfalse, this.iterCurr.GetLabelNext());
2434
LocalBuilder locNav = this.
helper
.DeclareLocal("$$$navParent", typeof(XPathNavigator));
2440
this.
helper
.Emit(OpCodes.Ldloc, locNav);
2441
this.
helper
.Call(XmlILMethods.NavMoveParent);
2442
this.
helper
.Emit(OpCodes.Brfalse, this.iterCurr.GetLabelNext());
2453
LocalBuilder locNav = this.
helper
.DeclareLocal("$$$navRoot", typeof(XPathNavigator));
2459
this.
helper
.Emit(OpCodes.Ldloc, locNav);
2460
this.
helper
.Call(XmlILMethods.NavMoveRoot);
2474
this.
helper
.LoadQueryContext();
2475
this.
helper
.Call(XmlILMethods.GetDefaultDataSource);
2557
LocalBuilder locIter = this.
helper
.DeclareLocal("$$$iterId", typeof(IdIterator));
2560
this.
helper
.Emit(OpCodes.Ldloca, locIter);
2563
this.
helper
.Call(XmlILMethods.IdCreate);
2599
this.
helper
.CallWriteStartElement(nameType, callChk);
2606
this.
helper
.CallStartElementContent();
2610
this.
helper
.CallWriteEndElement(nameType, callChk);
2640
this.
helper
.CallWriteStartAttribute(nameType, callChk);
2646
this.
helper
.CallWriteEndAttribute(callChk);
2662
this.
helper
.CallWriteStartComment();
2668
this.
helper
.CallWriteEndComment();
2681
this.
helper
.LoadQueryOutput();
2683
this.
helper
.CallWriteStartPI();
2689
this.
helper
.CallWriteEndPI();
2733
this.
helper
.LoadQueryOutput();
2742
this.
helper
.CallWriteString(false, callChk);
2747
this.
helper
.Call(XmlILMethods.CommentText);
2752
this.
helper
.Call(XmlILMethods.PIText);
2757
this.
helper
.CallWriteString(disableOutputEscaping, callChk);
2775
this.
helper
.CallWriteStartRoot();
2781
this.
helper
.CallWriteEndRoot();
2806
this.
helper
.LoadQueryOutput();
2813
this.
helper
.CallWriteNamespaceDecl(callChk);
2831
this.
helper
.LoadQueryRuntime();
2833
this.
helper
.Emit(OpCodes.Ldstr, baseUri);
2834
this.
helper
.Call(XmlILMethods.RtfConstr);
2838
this.
helper
.CallStartRtfConstruction(baseUri);
2844
this.
helper
.CallEndRtfConstruction();
2889
this.
helper
.Emit(OpCodes.Dup);
2890
this.
helper
.Call(XmlILMethods.NavLocalName);
2891
this.
helper
.Call(XmlILMethods.NavNmsp);
2892
this.
helper
.Construct(XmlILConstructors.QName);
2898
this.
helper
.Call(XmlILMethods.NavLocalName);
2904
this.
helper
.Call(XmlILMethods.NavNmsp);
2910
this.
helper
.Call(XmlILMethods.NavPrefix);
2933
Label lblDummy = this.
helper
.DefineLabel();
2934
this.
helper
.MarkLabel(lblDummy);
2963
this.
helper
.Call(XmlILMethods.ItemIsNode);
2982
this.
helper
.LoadQueryRuntime();
2984
this.
helper
.LoadInteger((int) codeBase);
2985
this.
helper
.Call(typDerived.IsSingleton ? XmlILMethods.ItemMatchesCode : XmlILMethods.SeqMatchesCode);
2992
this.
helper
.LoadQueryRuntime();
2994
this.
helper
.LoadInteger(this.
helper
.StaticData.DeclareXmlType(typBase));
2995
this.
helper
.Call(typDerived.IsSingleton ? XmlILMethods.ItemMatchesType : XmlILMethods.SeqMatchesType);
3056
this.
helper
.Emit(OpCodes.Ldc_I4_1);
3063
this.
helper
.Call(XmlILMethods.NavType);
3067
this.
helper
.Emit(OpCodes.Shl);
3080
this.
helper
.LoadInteger(kindsUnion);
3081
this.
helper
.Emit(OpCodes.And);
3086
this.
helper
.LoadInteger((int) kindsRuntime);
3123
this.
helper
.CallCacheCount(this.iterNested.Storage.ItemStorageType);
3128
this.
helper
.TestAndBranch(0, this.iterCurr.LabelBranch, OpCodes.Bne_Un);
3133
this.
helper
.TestAndBranch(0, this.iterCurr.LabelBranch, OpCodes.Beq);
3140
lblTrue = this.
helper
.DefineLabel();
3141
this.
helper
.Emit(OpCodes.Brfalse_S, lblTrue);
3144
this.
helper
.ConvBranchToBool(lblTrue, true);
3149
Label lblOnEnd = this.
helper
.DefineLabel();
3167
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, iterParent.LabelBranch);
3168
this.
helper
.MarkLabel(lblOnEnd);
3177
this.
helper
.ConvBranchToBool(lblOnEnd, true);
3206
this.
helper
.Call(XmlILMethods.Value);
3209
lblOnEnd = this.
helper
.DefineLabel();
3217
this.
helper
.Call(XmlILMethods.Value);
3220
lblDone = this.
helper
.DefineLabel();
3221
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, lblDone);
3222
this.
helper
.MarkLabel(lblOnEnd);
3223
this.
helper
.Emit(OpCodes.Ldstr, "");
3224
this.
helper
.MarkLabel(lblDone);
3267
this.
helper
.LoadQueryRuntime();
3275
this.
helper
.Call(XmlILMethods.GenId);
3278
lblOnEnd = this.
helper
.DefineLabel();
3287
this.
helper
.Call(XmlILMethods.GenId);
3290
lblDone = this.
helper
.DefineLabel();
3291
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, lblDone);
3292
this.
helper
.MarkLabel(lblOnEnd);
3293
this.
helper
.Emit(OpCodes.Pop);
3294
this.
helper
.Emit(OpCodes.Ldstr, "");
3295
this.
helper
.MarkLabel(lblDone);
3310
LocalBuilder locArgs = this.
helper
.DeclareLocal("$$$args", typeof(IList<XPathItem>[]));
3315
this.
helper
.LoadQueryContext();
3316
this.
helper
.Emit(OpCodes.Ldstr, ndName.LocalName);
3317
this.
helper
.Emit(OpCodes.Ldstr, ndName.NamespaceUri);
3320
this.
helper
.LoadInteger(ndInvoke.Arguments.Count);
3321
this.
helper
.Emit(OpCodes.Newarr, typeof(IList<XPathItem>));
3322
this.
helper
.Emit(OpCodes.Stloc, locArgs);
3330
this.
helper
.Emit(OpCodes.Ldloc, locArgs);
3331
this.
helper
.LoadInteger(iArg);
3332
this.
helper
.Emit(OpCodes.Ldelema, typeof(IList<XPathItem>));
3337
this.
helper
.Emit(OpCodes.Stobj, typeof(IList<XPathItem>));
3340
this.
helper
.Emit(OpCodes.Ldloc, locArgs);
3342
this.
helper
.Call(XmlILMethods.InvokeXsltLate);
3365
this.
helper
.LoadQueryRuntime();
3366
this.
helper
.LoadInteger(this.
helper
.StaticData.DeclareXmlType(ndInvoke.XmlType));
3373
this.
helper
.LoadXsltLibrary();
3375
this.
helper
.CallGetEarlyBoundObject(this.
helper
.StaticData.DeclareEarlyBound(ndName.NamespaceUri, extFunc.Method.DeclaringType), extFunc.Method.DeclaringType);
3426
this.
helper
.LoadQueryRuntime();
3427
this.
helper
.LoadInteger(this.
helper
.StaticData.DeclareXmlType(xmlTypeFormalArg));
3429
this.
helper
.TreatAs(clrTypeActualArg, typeof(object));
3430
this.
helper
.LoadType(clrTypeFormalArg);
3431
this.
helper
.Call(XmlILMethods.ChangeTypeXsltArg);
3432
this.
helper
.TreatAs(typeof(object), clrTypeFormalArg);
3441
this.
helper
.Call(extFunc.Method);
3445
this.
helper
.Emit(OpCodes.Ldsfld, XmlILMethods.StorageMethods[typeof(XPathItem)].SeqEmpty);
3449
this.
helper
.TreatAs(clrTypeRetSrc, typeof(object));
3450
this.
helper
.Call(XmlILMethods.ChangeTypeXsltResult);
3451
this.
helper
.TreatAs(typeof(object), clrTypeRetDst);
3455
Label lblSkip = this.
helper
.DefineLabel();
3456
this.
helper
.Emit(OpCodes.Dup);
3457
this.
helper
.Emit(OpCodes.Brtrue, lblSkip);
3458
this.
helper
.LoadQueryRuntime();
3459
this.
helper
.Emit(OpCodes.Ldstr, Res.GetString(Res.Xslt_ItemNull));
3460
this.
helper
.Call(XmlILMethods.ThrowException);
3461
this.
helper
.MarkLabel(lblSkip);
3473
Label lblSkipContent = this.
helper
.DefineLabel();
3477
this.
helper
.LoadQueryOutput();
3482
this.
helper
.Call(XmlILMethods.StartCopy);
3483
this.
helper
.Emit(OpCodes.Brfalse, lblSkipContent);
3489
this.
helper
.LoadQueryOutput();
3494
this.
helper
.Call(XmlILMethods.EndCopy);
3497
this.
helper
.MarkLabel(lblSkipContent);
3509
this.
helper
.LoadQueryOutput();
3513
this.
helper
.Call(XmlILMethods.CopyOf);
3541
this.
helper
.Call(meth);
3620
this.
helper
.Emit(OpCodes.Ldloc, locNav);
3622
this.
helper
.CallSyncToNavigator();
3623
this.
helper
.Emit(OpCodes.Stloc, locNav);
3638
LocalBuilder locIter = this.
helper
.DeclareLocal(iterName, iterType);
3641
this.
helper
.Emit(OpCodes.Ldloca, locIter);
3643
this.
helper
.Call(methCreate);
3661
LocalBuilder locIter = this.
helper
.DeclareLocal(iterName, iterType);
3664
this.
helper
.Emit(OpCodes.Ldloca, locIter);
3668
this.
helper
.LoadBoolean(orSelf == TriState.True);
3671
this.
helper
.Call(methCreate);
3696
LocalBuilder locIter = this.
helper
.DeclareLocal(iterName, iterType);
3702
this.
helper
.Emit(OpCodes.Ldloca, locIter);
3705
this.
helper
.LoadBoolean(orSelf == TriState.True);
3706
this.
helper
.Call(methCreate);
3709
lblOnEndNested = this.
helper
.DefineLabel();
3733
lblNext = this.
helper
.DefineLabel();
3734
this.
helper
.MarkLabel(lblNext);
3737
this.
helper
.Emit(OpCodes.Ldloca, locIter);
3738
this.
helper
.Call(methNext);
3739
this.
helper
.Emit(OpCodes.Brfalse, this.iterCurr.GetLabelNext());
3764
lblCall = this.
helper
.DefineLabel();
3769
this.
helper
.Emit(OpCodes.Ldloca, locIter);
3771
this.
helper
.EmitUnconditionalBranch(OpCodes.Br, lblCall);
3775
this.
helper
.MarkLabel(lblOnEndNested);
3776
this.
helper
.Emit(OpCodes.Ldloca, locIter);
3777
this.
helper
.Emit(OpCodes.Ldnull);
3781
this.
helper
.MarkLabel(lblCall);
3782
this.
helper
.Call(methNext);
3787
this.
helper
.LoadInteger((int) IteratorResult.NeedInputNode);
3788
this.
helper
.Emit(OpCodes.Beq, this.iterNested.GetLabelNext());
3797
this.
helper
.Emit(OpCodes.Switch, new Label[] {this.iterCurr.GetLabelNext(), this.iterNested.GetLabelNext()});
3813
this.
helper
.LoadQueryOutput();
3833
this.
helper
.Emit(OpCodes.Ldstr, ndLiteralName.LocalName);
3841
this.
helper
.Emit(OpCodes.Ldstr, localName);
3842
this.
helper
.Emit(OpCodes.Ldstr, ns);
3843
this.
helper
.Construct(XmlILConstructors.QName);
3850
this.
helper
.Emit(OpCodes.Ldstr, prefix);
3851
this.
helper
.Emit(OpCodes.Ldstr, localName);
3852
this.
helper
.Emit(OpCodes.Ldstr, ns);
3938
this.
helper
.LoadQueryRuntime();
3946
this.
helper
.LoadInteger(this.
helper
.StaticData.DeclareName(ndName.LocalName));
3947
this.
helper
.LoadInteger(this.
helper
.StaticData.DeclareName(ndName.NamespaceUri));
3950
this.
helper
.Call(XmlILMethods.QNameEqualLit);
3958
this.
helper
.Call(XmlILMethods.QNameEqualNav);
4007
this.
helper
.Emit(opcode, this.iterCurr.LabelBranch);
4021
this.
helper
.Emit(opcode, this.iterCurr.LabelBranch);
4028
case QilNodeType.Gt: this.
helper
.Emit(OpCodes.Cgt); break;
4029
case QilNodeType.Lt: this.
helper
.Emit(OpCodes.Clt); break;
4030
case QilNodeType.Eq: this.
helper
.Emit(OpCodes.Ceq); break;
4040
lblTrue = this.
helper
.DefineLabel();
4041
this.
helper
.Emit(opcode, lblTrue);
4042
this.
helper
.ConvBranchToBool(lblTrue, true);
4063
this.
helper
.Emit((relOp == QilNodeType.Eq) ? OpCodes.Brfalse : OpCodes.Brtrue, this.iterCurr.LabelBranch);
4070
this.
helper
.Emit((relOp == QilNodeType.Eq) ? OpCodes.Brtrue : OpCodes.Brfalse, this.iterCurr.LabelBranch);
4081
lblTrue = this.
helper
.DefineLabel();
4082
this.
helper
.Emit((relOp == QilNodeType.Eq) ? OpCodes.Brfalse : OpCodes.Brtrue, lblTrue);
4083
this.
helper
.ConvBranchToBool(lblTrue, true);
4109
lblOnEnd = this.
helper
.DefineLabel();
4172
this.
helper
.CallStartTree(QilConstructorToNodeType(ndCtor.NodeType));
4184
this.
helper
.CallStartElementContent();
4199
this.
helper
.CallEndTree();
4272
this.
helper
.CallGetNameFilter(this.
helper
.StaticData.DeclareNameFilter(ndName.LocalName, ndName.NamespaceUri));
4282
this.
helper
.CallGetTypeFilter(XPathNodeType.All);
4286
this.
helper
.CallGetTypeFilter(XPathNodeType.Attribute);
4291
this.
helper
.CallGetTypeFilter(QilXmlToXPathNodeType(xmlTypes));
4314
this.iterCurr = new IteratorDescriptor(this.
helper
);
4351
this.
helper
.Emit(OpCodes.Brtrue, this.iterCurr.LabelBranch);
4353
this.
helper
.Emit(OpCodes.Brfalse, this.iterCurr.LabelBranch);
4470
Label lblOnEnd = this.
helper
.DefineLabel();
4501
locCache = this.
helper
.DeclareLocal("$$$cache", methods.SeqType);
4502
this.
helper
.Emit(OpCodes.Ldloc, locCache);
4508
this.
helper
.CallToken(methods.SeqReuseSgl);
4509
this.
helper
.Emit(OpCodes.Stloc, locCache);
4514
this.
helper
.CallToken(methods.SeqReuse);
4515
this.
helper
.Emit(OpCodes.Stloc, locCache);
4516
this.
helper
.Emit(OpCodes.Ldloc, locCache);
4528
this.
helper
.Call(methods.SeqAdd);
4529
this.
helper
.Emit(OpCodes.Ldloc, locCache);
4537
this.
helper
.Emit(OpCodes.Pop);