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

◆ VisitXsltInvokeLateBound()

override QilNode System.Xml.Xsl.IlGen.XmlILVisitor.VisitXsltInvokeLateBound ( QilInvokeLateBound ndInvoke)
inlineprotectedvirtual

Reimplemented from System.Xml.Xsl.Qil.QilVisitor.

Definition at line 2186 of file XmlILVisitor.cs.

2187 {
2189 QilName name = ndInvoke.Name;
2191 _helper.Emit(OpCodes.Ldstr, name.LocalName);
2192 _helper.Emit(OpCodes.Ldstr, name.NamespaceUri);
2193 _helper.LoadInteger(ndInvoke.Arguments.Count);
2196 for (int i = 0; i < ndInvoke.Arguments.Count; i++)
2197 {
2198 QilNode nd = ndInvoke.Arguments[i];
2205 }
2207 _helper.Call(XmlILMethods.InvokeXsltLate);
2208 _iterCurr.Storage = StorageDescriptor.Stack(typeof(XPathItem), isCached: true);
2209 return ndInvoke;
2210 }
static readonly OpCode Stloc
Definition OpCodes.cs:429
static readonly OpCode Ldstr
Definition OpCodes.cs:231
static readonly OpCode Ldelema
Definition OpCodes.cs:285
static readonly OpCode Stobj
Definition OpCodes.cs:257
static readonly OpCode Ldloc
Definition OpCodes.cs:425
static readonly OpCode Newarr
Definition OpCodes.cs:281
LocalBuilder DeclareLocal(string name, Type type)
void NestedVisitEnsureCache(QilNode nd, Type itemStorageType)

References System.Xml.Xsl.IlGen.XmlILVisitor._helper, System.Xml.Xsl.IlGen.XmlILVisitor._iterCurr, System.Xml.Xsl.IlGen.GenerateHelper.Call(), System.Collections.Generic.Dictionary< TKey, TValue >.Count, System.Xml.Xsl.IlGen.GenerateHelper.DeclareLocal(), System.Xml.Dictionary, System.Xml.Xsl.IlGen.GenerateHelper.Emit(), System.Xml.Xsl.IlGen.IteratorDescriptor.EnsureStack(), System.Xml.Xsl.IlGen.XmlILMethods.InvokeXsltLate, System.Reflection.Emit.OpCodes.Ldelema, System.Reflection.Emit.OpCodes.Ldloc, System.Reflection.Emit.OpCodes.Ldstr, System.Xml.Xsl.IlGen.GenerateHelper.LoadInteger(), System.Xml.Xsl.IlGen.GenerateHelper.LoadQueryContext(), System.Xml.Xsl.IlGen.XmlILVisitor.NestedVisitEnsureCache(), System.Reflection.Emit.OpCodes.Newarr, System.Xml.Xsl.IlGen.StorageDescriptor.Stack(), System.Reflection.Emit.OpCodes.Stloc, and System.Reflection.Emit.OpCodes.Stobj.