[hidl format] Emit empty interfaces on a single line

Bug: 137553653
Test: m hidl_format_test
Change-Id: Ic61a4435d21f6f1cb9ee9f5924a57446df09af22
diff --git a/Interface.cpp b/Interface.cpp
index b77e9e8..5510fec 100644
--- a/Interface.cpp
+++ b/Interface.cpp
@@ -823,10 +823,12 @@
         out << "extends " << super->fqName().getRelativeFQName(fqName()) << " ";
     }
 
-    out << "{\n";
+    out << "{";
 
     out.indent([&] {
         const std::vector<const NamedType*>& definedTypes = getSortedDefinedTypes();
+        if (definedTypes.size() > 0 || userDefinedMethods().size() > 0) out << "\n";
+
         out.join(definedTypes.begin(), definedTypes.end(), "\n",
                  [&](auto t) { t->emitHidlDefinition(out); });