@SuppressWarnings("unchecked") @Nullable private <T, O extends Message, E extends ProtoElement> T getProtoExtension( E element, GeneratedExtension<O, T> extension) { // Use this method as the chokepoint for all annotations processing, so we can toggle on/off // annotations processing in one place. if (enableProtoAnnotations) { return (T) element.getOptionFields().get(extension.getDescriptor()); } else { return null; } }
@SuppressWarnings("unchecked") @Nullable private <T extends ProtocolMessageEnum, O extends Message, E extends ProtoElement> List<EnumValueDescriptor> getProtoExtensionForEnumValue( E element, GeneratedExtension<O, List<T>> extension) { // Use this method as the chokepoint for all annotations processing for enum values // so we can toggle on/off annotations processing in one place. if (enableProtoAnnotations) { return (List<EnumValueDescriptor>) element.getOptionFields().get(extension.getDescriptor()); } else { return null; } }
@VisitsBefore void visit(ProtoElement element) { findOptionTypes(element.getOptionFields()); }
@VisitsBefore void visit(ProtoElement element) { findOptionTypes(element.getOptionFields()); }