private string GetMonoEmbeddedFullTypeNameFor(TypeReference type) { TypeSpecification typeSpecification = type as TypeSpecification; return (typeSpecification == null || !((TypeReference) typeSpecification).get_IsRequiredModifier() ? (!type.get_IsRequiredModifier() ? type.get_FullName() : type.GetElementType().get_FullName()) : typeSpecification.get_ElementType().get_FullName()).Replace('/', '+').Replace('<', '[').Replace('>', ']'); }