Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ CreateContainerIterator()

void System.Xml.Xsl.IlGen.XmlILVisitor.CreateContainerIterator ( QilUnary ndDod,
string iterName,
Type iterType,
MethodInfo methCreate,
MethodInfo methNext,
MethodInfo methCurrent,
XmlNodeKindFlags kinds,
QilName ndName,
TriState orSelf )
inlineprivate

Definition at line 2498 of file XmlILVisitor.cs.

2499 {
2501 QilLoop qilLoop = (QilLoop)ndDod.Child;
2504 if (orSelf != TriState.Unknown)
2505 {
2506 _helper.LoadBoolean(orSelf == TriState.True);
2507 }
2511 StartBinding(qilLoop.Variable);
2512 EndBinding(qilLoop.Variable);
2513 EndNestedIterator(qilLoop.Variable);
2516 }
static readonly OpCode Ldloca
Definition OpCodes.cs:427
LocalBuilder DeclareLocal(string name, Type type)
void EndBinding(QilIterator ndIter)
void LoadSelectFilter(XmlNodeKindFlags xmlTypes, QilName ndName)
void StartBinding(QilIterator ndIter)
void GenerateContainerIterator(QilNode nd, LocalBuilder locIter, Label lblOnEndNested, MethodInfo methNext, MethodInfo methCurrent, Type itemStorageType)

References System.Xml.Xsl.IlGen.XmlILVisitor._helper, System.Xml.Xsl.IlGen.XmlILVisitor._iterNested, System.Xml.Xsl.IlGen.GenerateHelper.Call(), System.Xml.Xsl.IlGen.GenerateHelper.DeclareLocal(), System.Xml.Xsl.IlGen.GenerateHelper.DefineLabel(), System.Xml.Dictionary, System.Xml.Xsl.IlGen.GenerateHelper.Emit(), System.Xml.Xsl.IlGen.XmlILVisitor.EndBinding(), System.Xml.Xsl.IlGen.XmlILVisitor.EndNestedIterator(), System.Xml.Xsl.IlGen.XmlILVisitor.GenerateContainerIterator(), System.Reflection.Emit.OpCodes.Ldloca, System.Xml.Xsl.IlGen.GenerateHelper.LoadBoolean(), System.Xml.Xsl.IlGen.XmlILVisitor.LoadSelectFilter(), System.Xml.Xsl.IlGen.XmlILVisitor.StartBinding(), System.Xml.Xsl.IlGen.XmlILVisitor.StartNestedIterator(), and System.Xml.Xsl.IlGen.IteratorDescriptor.Storage.

Referenced by System.Xml.Xsl.IlGen.XmlILVisitor.HandleDodPatterns().