Skip to content

Commit f31491d

Browse files
author
Viktor Chernev
committed
add preprocessor for Describe 1.0
1 parent 8fd26b7 commit f31491d

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed

@DescribeCompilerAPI/Compiler/Preprocessors/PreprocessorForDescribe10.cs

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,72 @@ public string ProcessSource(string value)
6767
{
6868
sb.Append('\\');
6969
}
70+
else if (value[i] == '['
71+
&& value[i - 1] != '['
72+
&& value[i + 1] != '[')
73+
{
74+
sb.Append('\\');
75+
}
76+
else if (value[i] == ']'
77+
&& value[i - 1] != ']'
78+
&& value[i + 1] != ']')
79+
{
80+
sb.Append('\\');
81+
}
82+
else if (value[i] == '{'
83+
&& value[i - 1] != '{'
84+
&& value[i + 1] != '{')
85+
{
86+
sb.Append('\\');
87+
}
88+
else if (value[i] == '}'
89+
&& value[i - 1] != '}'
90+
&& value[i + 1] != '}')
91+
{
92+
sb.Append('\\');
93+
}
94+
else if (value[i] == '<'
95+
&& value[i - 1] != '<'
96+
&& value[i + 1] != '<')
97+
{
98+
sb.Append('\\');
99+
}
100+
else if (value[i] == '>')
101+
{
102+
if ((value[i + 1] == '\n' || value[i + 1] == '\r')
103+
&& value[i - 1] == '-')
104+
{
105+
sb.Append('>');
106+
}
107+
else if (value[i] == '>'
108+
&& value[i - 1] != '>'
109+
&& value[i + 1] != '>')
110+
{
111+
sb.Append('\\');
112+
}
113+
}
114+
else if (value[i] == ',')
115+
{
116+
if (value[i + 1] == '\n' || value[i + 1] == '\r')
117+
{
118+
sb.Append(',');
119+
}
120+
else
121+
{
122+
sb.Append('\\');
123+
}
124+
}
125+
else if (value[i] == ';')
126+
{
127+
if(value[i + 1] == '\n' || value[i + 1] == '\r')
128+
{
129+
sb.Append(';');
130+
}
131+
else
132+
{
133+
sb.Append('\\');
134+
}
135+
}
70136

71137
sb.Append(value[i]);
72138
}

0 commit comments

Comments
 (0)