+ os << "Z_GDU";
+ return os;
+}
+
+std::ostream& std::operator<<(std::ostream& os, Z_HTTP_Request& httpreq)
+{
+ os << httpreq.method << " ";
+ os << httpreq.path;
+ return os;
+}
+
+
+std::ostream& std::operator<<(std::ostream& os, Z_HTTP_Response& httpres)
+{
+ os << httpres.code << " ";
+ os << httpres.content_len;
+ return os;
+}
+
+std::ostream& std::operator<<(std::ostream& os, Z_Records & rs)
+{
+ switch(rs.which) {
+ case Z_Records_DBOSD :
+ break;
+ case Z_Records_NSD:
+ os << *(rs.u.nonSurrogateDiagnostic);
+ break;
+ case Z_Records_multipleNSD:
+ os << "Z_Records_multipleNSD";
+ //os << *(rs.u.multipleNonSurDiagnostics);
+ break;
+ default:
+ os << "Z_Records" ;
+ }
+
+ return os;
+}
+
+std::ostream& std::operator<<(std::ostream& os, Z_DiagRec& dr)
+{
+ switch(dr.which) {
+ case Z_DiagRec_defaultFormat:
+ os << *(dr.u.defaultFormat);
+ break;
+ case Z_DiagRec_externallyDefined :
+ os << "Z_DiagRec_externallyDefined";
+ break;
+ default:
+ os << "Z_DiagRec" ;
+ }
+
+ return os;
+}
+
+std::ostream& std::operator<<(std::ostream& os, Z_DefaultDiagFormat& ddf)
+{
+ os << *(ddf.condition) << " ";
+ switch(ddf.which) {
+ case Z_DefaultDiagFormat_v2Addinfo:
+ os << ddf.u.v2Addinfo;
+ break;
+ case Z_DefaultDiagFormat_v3Addinfo:
+ os << ddf.u.v3Addinfo;
+ break;
+ default:
+ os << "Z_DefaultDiagFormat" ;
+ }
+