error if annotation is repeated

unless it declares "repeatable" in schema.

Bug: 171536650
Test: aidl_unittests
Change-Id: I90fb16f5df43794319b14706f4e1e66752abd7b3
diff --git a/aidl_language.h b/aidl_language.h
index 4b56a5f..1e8b600 100644
--- a/aidl_language.h
+++ b/aidl_language.h
@@ -182,8 +182,9 @@
   virtual ~AidlAnnotation() = default;
   bool CheckValid() const;
 
-  const string& GetName() const { return schema_.name; };
+  const string& GetName() const { return schema_.name; }
   const Type& GetType() const { return schema_.type; }
+  bool Repeatable() const { return schema_.repeatable; }
   string ToString(const ConstantValueDecorator& decorator) const;
   std::map<std::string, std::string> AnnotationParams(
       const ConstantValueDecorator& decorator) const;
@@ -199,6 +200,8 @@
 
     // map from param name -> value type
     std::map<std::string, std::string> supported_parameters;
+
+    bool repeatable;
   };
   static const std::vector<Schema>& AllSchemas();