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

◆ CompileLiteralElement()

QilNode System.Xml.Xsl.Xslt.QilGenerator.CompileLiteralElement ( XslNode node)
inlineprivate

Definition at line 712 of file QilGenerator.cs.

713 {
714 bool flag = true;
715 while (true)
716 {
718 QilName name = node.Name;
719 string prefix = name.Prefix;
720 string nsUri = name.NamespaceUri;
722 if (flag)
723 {
724 _prefixesInUse.Add(prefix, nsUri);
725 }
726 else
727 {
728 prefix = name.Prefix;
729 }
731 QilList content = InstructionList();
733 while (true)
734 {
735 if (enumerator.MoveNext())
736 {
737 CompilerScopeManager<QilIterator>.ScopeRecord current = enumerator.Current;
738 string prefix2 = current.ncName;
739 string nsUri2 = current.nsUri;
740 if (!(nsUri2 != "http://www.w3.org/1999/XSL/Transform") || _scope.IsExNamespace(nsUri2))
741 {
742 continue;
743 }
745 if (flag)
746 {
748 {
749 if ((string)_prefixesInUse[prefix2] != nsUri2)
750 {
751 break;
752 }
753 }
754 else
755 {
757 }
758 }
759 else
760 {
761 prefix2 = current.ncName;
762 }
763 AddNsDecl(content, prefix2, nsUri2);
764 continue;
765 }
766 QilNode content2 = CompileInstructions(node.Content, content);
769 name.NamespaceUri = nsUri;
770 return _f.ElementCtor(name, content2);
771 }
773 flag = false;
774 }
775 }
QilNode ElementCtor(QilNode name, QilNode content)
void ApplyNsAliases(ref string prefix, ref string nsUri)
Definition Compiler.cs:161
readonly CompilerScopeManager< QilIterator > _scope
readonly XsltQilFactory _f
void AddNsDecl(QilList content, string prefix, string nsUri)
readonly OutputScopeManager _outputScope
QilNode CompileInstructions(IList< XslNode > instructions)
readonly HybridDictionary _prefixesInUse

References System.Xml.Xsl.Xslt.QilGenerator._compiler, System.Xml.Xsl.Xslt.QilGenerator._f, System.Xml.Xsl.Xslt.QilGenerator._outputScope, System.Xml.Xsl.Xslt.QilGenerator._prefixesInUse, System.Xml.Xsl.Xslt.QilGenerator._scope, System.Collections.Specialized.HybridDictionary.Add(), System.Xml.Xsl.Xslt.QilGenerator.AddNsDecl(), System.Xml.Xsl.Xslt.Compiler.ApplyNsAliases(), System.Collections.Specialized.HybridDictionary.Clear(), System.Xml.Xsl.Xslt.QilGenerator.CompileInstructions(), System.Collections.Specialized.HybridDictionary.Contains(), System.Xml.Dictionary, System.Xml.Xsl.Qil.QilPatternFactory.ElementCtor(), System.Xml.Xsl.Xslt.CompilerScopeManager< V >.GetEnumerator(), System.Xml.Xsl.Xslt.QilGenerator.InstructionList(), System.Xml.Xsl.Xslt.CompilerScopeManager< V >.IsExNamespace(), System.Xml.Xsl.Xslt.OutputScopeManager.PopScope(), System.prefix, and System.Xml.Xsl.Xslt.OutputScopeManager.PushScope().

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