Remove AidlQualifiedName

AidlQualifiedName is removed from AST in favor of std::string. It looks
like the class was introduced to handle the language-specific handling
of the qualified names (e.g. foo.bar becomes foo::bar in C++).
Since such language-specific routines are all moved to the backend,
we don't need to have the routine in the frontend.

Bug: 156309715
Test: m
Test: run aidl_unittests

Change-Id: I8acf43d804e92e79d8a588cdb429fdc68d625cbf
diff --git a/aidl_language.h b/aidl_language.h
index cec5298..4edcc43 100644
--- a/aidl_language.h
+++ b/aidl_language.h
@@ -302,8 +302,6 @@
   vector<AidlAnnotation> annotations_;
 };
 
-class AidlQualifiedName;
-
 // AidlTypeSpecifier represents a reference to either a built-in type,
 // a defined type, or a variant (e.g., array of generic) of a type.
 class AidlTypeSpecifier final : public AidlAnnotatable,
@@ -655,28 +653,6 @@
 class AidlParcelable;
 class AidlStructuredParcelable;
 
-class AidlQualifiedName : public AidlNode {
- public:
-  AidlQualifiedName(const AidlLocation& location, const std::string& term,
-                    const std::string& comments);
-  virtual ~AidlQualifiedName() = default;
-  // Movable, but neither copiable nor assignable
-  AidlQualifiedName(AidlQualifiedName&&) = default;
-  AidlQualifiedName(const AidlQualifiedName&) = delete;
-  AidlQualifiedName& operator=(const AidlQualifiedName&) = delete;
-
-  const std::vector<std::string>& GetTerms() const { return terms_; }
-  const std::string& GetComments() const { return comments_; }
-  std::string GetDotName() const { return android::base::Join(terms_, '.'); }
-  std::string GetColonName() const { return android::base::Join(terms_, "::"); }
-
-  void AddTerm(const std::string& term);
-
- private:
-  std::vector<std::string> terms_;
-  std::string comments_;
-};
-
 class AidlInterface;
 class AidlParcelable;
 class AidlStructuredParcelable;
@@ -685,7 +661,7 @@
 class AidlDefinedType : public AidlAnnotatable {
  public:
   AidlDefinedType(const AidlLocation& location, const std::string& name,
-                  const std::string& comments, const std::vector<std::string>& package);
+                  const std::string& comments, const std::string& package);
   virtual ~AidlDefinedType() = default;
 
   const std::string& GetName() const { return name_; };
@@ -694,10 +670,10 @@
   void SetComments(const std::string comments) { comments_ = comments; }
 
   /* dot joined package, example: "android.package.foo" */
-  std::string GetPackage() const;
+  std::string GetPackage() const { return package_; }
   /* dot joined package and name, example: "android.package.foo.IBar" */
   std::string GetCanonicalName() const;
-  const std::vector<std::string>& GetSplitPackage() const { return package_; }
+  const std::vector<std::string>& GetSplitPackage() const { return split_package_; }
 
   virtual std::string GetPreprocessDeclarationName() const = 0;
 
@@ -744,21 +720,19 @@
  private:
   std::string name_;
   std::string comments_;
-  const std::vector<std::string> package_;
+  const std::string package_;
+  const std::vector<std::string> split_package_;
 
   DISALLOW_COPY_AND_ASSIGN(AidlDefinedType);
 };
 
 class AidlParcelable : public AidlDefinedType, public AidlParameterizable<std::string> {
  public:
-  AidlParcelable(const AidlLocation& location, AidlQualifiedName* name,
-                 const std::vector<std::string>& package, const std::string& comments,
-                 const std::string& cpp_header = "",
+  AidlParcelable(const AidlLocation& location, const std::string& name, const std::string& package,
+                 const std::string& comments, const std::string& cpp_header = "",
                  std::vector<std::string>* type_params = nullptr);
   virtual ~AidlParcelable() = default;
 
-  // C++ uses "::" instead of "." to refer to a inner class.
-  std::string GetCppName() const { return name_->GetColonName(); }
   std::string GetCppHeader() const { return cpp_header_; }
 
   std::set<AidlAnnotation::Type> GetSupportedAnnotations() const override;
@@ -773,7 +747,6 @@
   void Dump(CodeWriter* writer) const override;
 
  private:
-  std::unique_ptr<AidlQualifiedName> name_;
   std::string cpp_header_;
 
   DISALLOW_COPY_AND_ASSIGN(AidlParcelable);
@@ -781,8 +754,8 @@
 
 class AidlStructuredParcelable : public AidlParcelable {
  public:
-  AidlStructuredParcelable(const AidlLocation& location, AidlQualifiedName* name,
-                           const std::vector<std::string>& package, const std::string& comments,
+  AidlStructuredParcelable(const AidlLocation& location, const std::string& name,
+                           const std::string& package, const std::string& comments,
                            std::vector<std::unique_ptr<AidlVariableDeclaration>>* variables);
 
   const std::vector<std::unique_ptr<AidlVariableDeclaration>>& GetFields() const {
@@ -833,7 +806,7 @@
  public:
   AidlEnumDeclaration(const AidlLocation& location, const string& name,
                       std::vector<std::unique_ptr<AidlEnumerator>>* enumerators,
-                      const std::vector<std::string>& package, const std::string& comments);
+                      const std::string& package, const std::string& comments);
   virtual ~AidlEnumDeclaration() = default;
 
   void SetBackingType(std::unique_ptr<const AidlTypeSpecifier> type);
@@ -865,7 +838,7 @@
  public:
   AidlInterface(const AidlLocation& location, const std::string& name, const std::string& comments,
                 bool oneway_, std::vector<std::unique_ptr<AidlMember>>* members,
-                const std::vector<std::string>& package);
+                const std::string& package);
   virtual ~AidlInterface() = default;
 
   const std::vector<std::unique_ptr<AidlMethod>>& GetMethods() const