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

◆ CompileApplyTemplates()

QilNode System.Xml.Xsl.Xslt.QilGenerator.CompileApplyTemplates ( XslNodeEx node)
inlineprivate

Definition at line 1015 of file QilGenerator.cs.

1016 {
1017 IList<XslNode> content = node.Content;
1021 for (int i = 0; i < content.Count; i++)
1022 {
1023 if (content[i] is VarPar varPar)
1024 {
1026 QilNode value = varPar.Value;
1027 if (IsDebug || (!(value is QilIterator) && !(value is QilLiteral)))
1028 {
1030 qilIterator2.DebugName = _f.QName("with-param " + varPar.Name.QualifiedName, "urn:schemas-microsoft-com:xslt-debug").ToString();
1033 }
1034 }
1035 }
1036 LoopFocus parentLoop = _curLoop;
1041 expr = WrapLoopBody(node.ElemNameLi, expr, node.EndTagLi);
1042 expr = AddCurrentPositionLast(expr);
1043 expr = _curLoop.ConstructLoop(expr);
1045 return _varHelper.FinishVariables(expr, varScope);
1046 }
override string ToString()
Definition QilName.cs:114
QilIterator For(QilNode binding)
QilIterator Let(QilNode binding)
QilName QName(string local, string uri, string prefix)
QilNode FinishVariables(QilNode node, int varScope)
QilNode WrapLoopBody(ISourceLineInfo before, QilNode expr, ISourceLineInfo after)
void CompileWithParam(VarPar withParam)
readonly XsltQilFactory _f
readonly VariableHelper _varHelper
QilNode AddCurrentPositionLast(QilNode content)
QilNode GenerateApply(StylesheetLevel sheet, XslNode node)
QilNode CompileSorts(IList< XslNode > content, ref LoopFocus parentLoop)
QilNode CompileNodeSetExpression(string expr)
void SetFocus(QilIterator current)
Definition LoopFocus.cs:24
QilLoop ConstructLoop(QilNode body)
Definition LoopFocus.cs:67
void Sort(QilNode sortKeys)
Definition LoopFocus.cs:58

References System.Xml.Xsl.Xslt.QilGenerator._compiler, System.Xml.Xsl.Xslt.QilGenerator._curLoop, System.Xml.Xsl.Xslt.QilGenerator._f, System.Xml.Xsl.Xslt.QilGenerator._varHelper, System.Xml.Xsl.Xslt.QilGenerator.AddCurrentPositionLast(), System.Xml.Xsl.Xslt.QilGenerator.VariableHelper.AddVariable(), System.Xml.Xsl.Xslt.QilGenerator.CompileNodeSetExpression(), System.Xml.Xsl.Xslt.QilGenerator.CompileSorts(), System.Xml.Xsl.Xslt.QilGenerator.CompileWithParam(), System.Xml.Xsl.Xslt.LoopFocus.ConstructLoop(), System.Collections.Generic.Dictionary< TKey, TValue >.Count, System.Xml.Dictionary, System.Xml.Xsl.Xslt.QilGenerator.VariableHelper.FinishVariables(), System.Xml.Xsl.Qil.QilPatternFactory.For(), System.Xml.Xsl.Xslt.QilGenerator.GenerateApply(), System.Xml.Xsl.Xslt.QilGenerator.IsDebug, System.Xml.Xsl.Qil.QilPatternFactory.Let(), System.Xml.Xsl.Qil.QilPatternFactory.QName(), System.Xml.Xsl.Xslt.Compiler.Root, System.Xml.Xsl.Xslt.LoopFocus.SetFocus(), System.Xml.Xsl.Xslt.LoopFocus.Sort(), System.Xml.Xsl.Xslt.QilGenerator.VariableHelper.StartVariables(), System.Xml.Xsl.Qil.QilName.ToString(), System.value, and System.Xml.Xsl.Xslt.QilGenerator.WrapLoopBody().

Referenced by System.Xml.Xsl.Xslt.QilGenerator.CompileInstructions().