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

◆ GetCSharpName() [3/3]

static int System.Xml.Serialization.CodeIdentifier.GetCSharpName ( Type t,
Type[] parameters,
int index,
StringBuilder sb )
inlinestaticprivate

Definition at line 148 of file CodeIdentifier.cs.

149 {
150 if (t.DeclaringType != null && t.DeclaringType != t)
151 {
152 index = GetCSharpName(t.DeclaringType, parameters, index, sb);
153 sb.Append('.');
154 }
155 string name = t.Name;
156 int num = name.IndexOf('`');
157 if (num < 0)
158 {
159 num = name.IndexOf('!');
160 }
161 if (num > 0)
162 {
163 EscapeKeywords(name.Substring(0, num), sb);
164 sb.Append('<');
165 int num2 = int.Parse(name.AsSpan(num + 1), NumberStyles.Integer, CultureInfo.InvariantCulture) + index;
166 while (index < num2)
167 {
168 sb.Append(GetCSharpName(parameters[index]));
169 if (index < num2 - 1)
170 {
171 sb.Append(',');
172 }
173 index++;
174 }
175 sb.Append('>');
176 }
177 else
178 {
179 EscapeKeywords(name, sb);
180 }
181 return index;
182 }
static CultureInfo InvariantCulture
StringBuilder Append(char value, int repeatCount)
static void EscapeKeywords(string identifier, StringBuilder sb)
static string GetCSharpName(string name)

References System.Text.StringBuilder.Append(), System.Type.DeclaringType, System.Xml.Dictionary, System.Xml.Serialization.CodeIdentifier.EscapeKeywords(), System.Xml.Serialization.CodeIdentifier.GetCSharpName(), System.index, System.Globalization.CultureInfo.InvariantCulture, and System.Reflection.MemberInfo.Name.