Bladeren bron

fix: proper formatting for multiple annotations/errors

Sam Jaffe 3 weken geleden
bovenliggende
commit
5958027351
1 gewijzigde bestanden met toevoegingen van 4 en 4 verwijderingen
  1. 4 4
      include/jvalidate/validation_result.h

+ 4 - 4
include/jvalidate/validation_result.h

@@ -117,8 +117,9 @@ public:
     }
     os << ',' << '\n';
     os << indent(i) << '"' << name << '"' << ':' << ' ' << '{' << '\n';
+    char const * odiv = "";
     for (auto const & [key, anno] : named) {
-      os << indent(i + 1) << '"' << key << '"' << ':' << ' ';
+      os << std::exchange(odiv, ",\n") << indent(i + 1) << '"' << key << '"' << ':' << ' ';
       if (auto const * str = std::get_if<0>(&anno)) {
         os << '"' << *str << '"';
       } else if (auto const * vec = std::get_if<1>(&anno)) {
@@ -129,9 +130,8 @@ public:
         }
         os << '\n' << indent(i + 1) << ']';
       }
-      os << '\n';
     }
-    os << indent(i) << '}';
+    os << '\n' << indent(i) << '}';
   }
 
   bool valid() const { return valid_; }
@@ -220,7 +220,7 @@ public:
 
     for (auto const & [doc, results] : results_) {
       for (auto const & [schema, result] : results) {
-        if (!result.valid && !result.errors.empty()) {
+        if (!result.errors.empty()) {
           rval.results_[doc][schema] = result;
         }
       }