String (GenericType type, List<TypeAnnotationWriteHelper> typeAnnWriteHelpers) { int tp = type.getType(); if (tp <= CodeConstants.TYPE_BOOLEAN) { return typeNames[tp]; } else if (tp == CodeConstants.TYPE_VOID) { return "void"; } else if (tp == CodeConstants.TYPE_GENVAR) { StringBuilder sb = new StringBuilder(); ExprProcessor.writeTypeAnnotationBeforeType(type, sb, typeAnnWriteHelpers); sb.append(type.getValue()); return sb.toString(); } else if (tp == CodeConstants.TYPE_OBJECT) { StringBuilder sb = new StringBuilder(); appendClassName(type, sb, typeAnnWriteHelpers); return sb.toString(); } throw new RuntimeException("Invalid type: " + type); }