private boolean packageHasEnums(Model model) { for (TypeRef type : model.getSymbolTable().getDeclaredTypes()) { if (type.isEnum() && type.getEnumType().isReachable()) { return true; } } return false; }
private void addApiImports(GapicInterfaceContext context) { for (TypeRef type : context.getInterface().getModel().getSymbolTable().getDeclaredTypes()) { if (type.isEnum() && type.getEnumType().isReachable()) { context.getImportTypeTable().getAndSaveNicknameFor(type); break; } } for (MethodModel method : context.getSupportedMethods()) { addMethodImports(context.asDynamicMethodContext(method)); } }
private void addApiImports(GapicInterfaceContext context) { for (TypeRef type : context.getInterface().getModel().getSymbolTable().getDeclaredTypes()) { if (type.isEnum() && type.getEnumType().isReachable()) { context.getImportTypeTable().getAndSaveNicknameFor(type); break; } } for (MethodModel method : context.getSupportedMethods()) { addMethodImports(context.asDynamicMethodContext(method)); } }
/** Return a list of enums, sorted alphabetically by name. */ public List<GrpcEnumDocView> generateEnumDocs( ModelTypeTable typeTable, SurfaceNamer namer, Collection<EnumType> enumElements) { ImmutableSortedSet.Builder<GrpcEnumDocView> enumDocs = ImmutableSortedSet.orderedBy(Comparator.comparing(GrpcEnumDocView::name)); for (EnumType enumElement : enumElements) { if (!enumElement.isReachable()) { continue; } GrpcEnumDocView.Builder doc = GrpcEnumDocView.newBuilder(); doc.name(namer.getEnumTypeName(typeTable, enumElement)); doc.lines(namer.getDocLines(GapicParser.getDocString(enumElement))); doc.values(generateEnumValueDocs(namer, enumElement.getValues())); doc.packageName(enumElement.getFile().getFullName()); enumDocs.add(doc.build()); } return enumDocs.build().asList(); }
private void assertTypeInclusions(Model model, Iterable<String> includedTypeNames, Iterable<String> excludedTypeNames) { for (String typeName : includedTypeNames) { TypeRef type = model.getSymbolTable().lookupType(typeName); Assert.assertNotNull(type); Assert.assertTrue(type.isMessage() || type.isEnum()); if (type.isMessage()) { Assert.assertTrue(type.getMessageType().isReachable()); } else { Assert.assertTrue(type.getEnumType().isReachable()); } } for (String typeName : excludedTypeNames) { TypeRef type = model.getSymbolTable().lookupType(typeName); Assert.assertNotNull(type); Assert.assertTrue(type.isMessage() || type.isEnum()); if (type.isMessage()) { Assert.assertFalse(type.getMessageType().isReachable()); } else { Assert.assertFalse(type.getEnumType().isReachable()); } } }