internal void WriteArrayTypeCompare(string variable, string escapedTypeName, string elementTypeName, bool useReflection) { if (!useReflection) { _writer.Write(variable); _writer.Write(" == typeof("); _writer.Write(escapedTypeName); _writer.Write(")"); return; } _writer.Write(variable); _writer.Write(".IsArray "); _writer.Write(" && "); WriteTypeCompare(variable + ".GetElementType()", elementTypeName, useReflection); }