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('>', ']');
 }