U_32 type_info_get_num_array_dimensions(Type_Info_Handle tih) { TypeDesc* td = (TypeDesc*)tih; if (td->get_kind() == K_Vector) { const String* name = td->get_type_name(); U_32 res = 0; if (name == NULL) { res = 1 + type_info_get_num_array_dimensions(td->get_element_type()); } else { res = countLeadingChars(name->bytes, '['); } assert(res<=255); return res; } return 0; }
const char* type_info_get_type_name(Type_Info_Handle tih) { TypeDesc* td = (TypeDesc*)tih; assert(td); return td->get_type_name()->bytes; }