static String getTypeString(DocEnv env, Type t, boolean full) {
        switch (t.tag) {
        case ARRAY:
            StringBuffer dimension = new StringBuffer();
            while (t.tag == ARRAY) {
                dimension = dimension.append("[]");
                t = env.types.elemtype(t);
            }
            return getTypeString(env, t, full) + dimension;
        case CLASS:
            return ParameterizedTypeImpl.
                        parameterizedTypeToString(env, (ClassType)t, full);
        case WILDCARD:
            Type.WildcardType a = (Type.WildcardType)t;
            return WildcardTypeImpl.wildcardTypeToString(env, a, full);
        default:
            return t.tsym.getQualifiedName().toString();
        }
    }