private static string ResolveTypeName(ITypeSymbol symbol)
{
INamedTypeSymbol symbol3;
var builder = new StringBuilder();
var flag = false;
var symbol2 = symbol as IArrayTypeSymbol;
if (symbol2 != null)
{
flag = true;
symbol = symbol2.ElementType;
}
builder.Append(symbol.Name);
if (((symbol3 = symbol as INamedTypeSymbol) != null) && symbol3.TypeArguments.Any())
{
IEnumerable<string> values = (from x in symbol3.TypeArguments.AsEnumerable() select ResolveTypeName(x)).ToArray<string>();
builder.AppendFormat("<{0}>", string.Join(", ", values));
}
if (flag)
{
builder.Append("[]");
}
return builder.ToString();
}