hidl-gen: Fix nested type cannot be found.

Bug: 31821285

Test: `mma`
Test: `make hidl_test && adb sync && adb shell hidl_test`
Change-Id: I4a407e65973d85f76b43adff668155f15b783946
diff --git a/FQName.cpp b/FQName.cpp
index ca8948a..0255995 100644
--- a/FQName.cpp
+++ b/FQName.cpp
@@ -39,11 +39,13 @@
 namespace android {
 
 FQName::FQName()
-    : mValid(false), mIsIdentifier(false) {
+    : mValid(false),
+      mIsIdentifier(false) {
 }
 
 FQName::FQName(const std::string &s)
-    : mValid(false), mIsIdentifier(false) {
+    : mValid(false),
+      mIsIdentifier(false) {
     setTo(s);
 }
 
@@ -69,6 +71,12 @@
       mValueName(other.mValueName) {
 }
 
+FQName::FQName(const std::vector<std::string> &names)
+    : mValid(false),
+      mIsIdentifier(false) {
+    setTo(StringHelper::JoinStrings(names, "."));
+}
+
 bool FQName::isValid() const {
     return mValid;
 }