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

◆ ExtractText()

QilNode System.Xml.Xsl.Xslt.QilGenerator.ExtractText ( string source,
ref int pos )
inlineprivate

Definition at line 855 of file QilGenerator.cs.

856 {
857 int num = pos;
859 int i;
860 for (i = pos; i < source.Length; i++)
861 {
862 char c = source[i];
863 if (c != '{' && c != '}')
864 {
865 continue;
866 }
867 if (i + 1 < source.Length && source[i + 1] == c)
868 {
869 i++;
870 _unescapedText.Append(source, num, i - num);
871 num = i + 1;
872 continue;
873 }
874 if (c == '{')
875 {
876 break;
877 }
878 pos = source.Length;
879 if (_xslVersion != XslVersion.ForwardsCompatible)
880 {
882 return null;
883 }
885 }
886 pos = i;
887 if (_unescapedText.Length == 0)
888 {
889 if (i <= num)
890 {
891 return null;
892 }
893 return _f.String(source.Substring(num, i - num));
894 }
895 _unescapedText.Append(source, num, i - num);
897 }
static string Xslt_SingleRightBraceInAvt
Definition SR.cs:1892
Definition SR.cs:7
override string ToString()
StringBuilder Append(char value, int repeatCount)
QilNode Error(string res, QilNode args)
void ReportError(string res, params string[] args)
readonly XsltQilFactory _f
readonly StringBuilder _unescapedText
ISourceLineInfo SourceLine
Definition XslNode.cs:10

References System.Xml.Xsl.Xslt.QilGenerator._f, System.Xml.Xsl.Xslt.QilGenerator._lastScope, System.Xml.Xsl.Xslt.QilGenerator._unescapedText, System.Xml.Xsl.Xslt.QilGenerator._xslVersion, System.Text.StringBuilder.Append(), System.Xml.Dictionary, System.Xml.Xsl.XPath.XPathQilFactory.Error(), System.Text.StringBuilder.Length, System.Xml.Xsl.Xslt.QilGenerator.ReportError(), System.source, System.Xml.Xsl.Xslt.XslNode.SourceLine, System.Xml.Xsl.Qil.QilPatternFactory.String(), System.Text.StringBuilder.ToString(), and System.SR.Xslt_SingleRightBraceInAvt.

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