Parsing nested types.

The grammar supports nested types now. preprocess/dumpapi dumps nested
types.

  interface IFoo {
    enum Type { FOO, BAR }
    parcelable Result { ... }
    Result foo(Type type);
  }

Backend support is not supported yet.

Bug: 182508839
Test: aidl_unittests
Change-Id: Ic7d1bc8aec788b65de85caad2a813a52fb2cfc5e
diff --git a/aidl_dumpapi.cpp b/aidl_dumpapi.cpp
index ce5a1f7..7d3f19d 100644
--- a/aidl_dumpapi.cpp
+++ b/aidl_dumpapi.cpp
@@ -56,6 +56,9 @@
   for (const auto& constdecl : dt.GetConstantDeclarations()) {
     constdecl->DispatchVisit(*this);
   }
+  for (const auto& nested : dt.GetNestedTypes()) {
+    nested->DispatchVisit(*this);
+  }
 }
 
 // Dumps comment only if its has meaningful tags.