private static string ReadTypeName(string buffer, ref int position)
{
var builder = new StringBuilder();
while (position < buffer.Length)
{
var current = buffer[position];
switch (current)
{
case ',':
case '+':
case '[':
return builder.ToString();
case '\\':
builder.Append(buffer[++position]);
break;
default:
builder.Append(current);
break;
}
position++;
}
return builder.ToString();
}