@@ -271,11 +271,18 @@ impl FromInner<Socket> for TcpStream {
271
271
272
272
impl fmt:: Debug for TcpStream {
273
273
fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
274
- f. debug_struct ( "TcpStream" )
275
- . field ( "addr" , & self . socket_addr ( ) )
276
- . field ( "peer" , & self . peer_addr ( ) )
277
- . field ( "inner" , & self . inner . as_inner ( ) )
278
- . finish ( )
274
+ let mut res = f. debug_struct ( "TcpStream" ) ;
275
+
276
+ if let Ok ( addr) = self . socket_addr ( ) {
277
+ res = res. field ( "addr" , & addr) ;
278
+ }
279
+
280
+ if let Ok ( peer) = self . peer_addr ( ) {
281
+ res = res. field ( "peer" , & peer) ;
282
+ }
283
+
284
+ res = res. field ( "inner" , & self . inner . as_inner ( ) ) ;
285
+ res. finish ( )
279
286
}
280
287
}
281
288
@@ -340,10 +347,14 @@ impl FromInner<Socket> for TcpListener {
340
347
341
348
impl fmt:: Debug for TcpListener {
342
349
fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
343
- f. debug_struct ( "TcpListener" )
344
- . field ( "addr" , & self . socket_addr ( ) )
345
- . field ( "inner" , & self . inner . as_inner ( ) )
346
- . finish ( )
350
+ let mut res = f. debug_struct ( "TcpListener" ) ;
351
+
352
+ if let Ok ( addr) = self . socket_addr ( ) {
353
+ res = res. field ( "addr" , & addr) ;
354
+ }
355
+
356
+ res = res. field ( "inner" , & self . inner . as_inner ( ) ) ;
357
+ res. finish ( )
347
358
}
348
359
}
349
360
@@ -468,9 +479,13 @@ impl FromInner<Socket> for UdpSocket {
468
479
469
480
impl fmt:: Debug for UdpSocket {
470
481
fn fmt ( & self , f : & mut fmt:: Formatter ) -> fmt:: Result {
471
- f. debug_struct ( "UdpSocket" )
472
- . field ( "addr" , & self . socket_addr ( ) )
473
- . field ( "inner" , & self . inner . as_inner ( ) )
474
- . finish ( )
482
+ let mut res = f. debug_struct ( "UdpSocket" ) ;
483
+
484
+ if let Ok ( addr) = self . socket_addr ( ) {
485
+ res = res. field ( "addr" , & addr) ;
486
+ }
487
+
488
+ res = res. field ( "inner" , & self . inner . as_inner ( ) ) ;
489
+ res. finish ( )
475
490
}
476
491
}
0 commit comments