fn clone(&self) -> AddressBook {
        // The existing metrics might be outdated, but we avoid calling `update_metrics`,
        // so we don't overwrite the prometheus metrics from the main address book.
        let (address_metrics_tx, _address_metrics_rx) =
            watch::channel(*self.address_metrics_tx.borrow());

        AddressBook {
            by_addr: self.by_addr.clone(),
            addr_limit: self.addr_limit,
            local_listener: self.local_listener,
            span: self.span.clone(),
            address_metrics_tx,
            last_address_log: None,
        }
    }
/// Clone the addresses, address limit, local listener address, and span.
///
/// Cloned address books have a separate metrics struct watch channel, and an empty last address log.
///
/// All address books update the same prometheus metrics.
Clone the addresses, address limit, local listener address, and span.
Cloned address books have a separate metrics struct watch channel, and an empty last address log.

All address books update the same prometheus metrics.
Clone the addresses address limit local listener address and span . Cloned address books have a separate metrics struct watch channel and an empty last address log . All address books update the same prometheus metrics .
fn clone(&self) -> AddressBook {
        // The existing metrics might be outdated, but we avoid calling `update_metrics`,
        // so we don't overwrite the prometheus metrics from the main address book.
        let (address_metrics_tx, _address_metrics_rx) =
            watch::channel(*self.address_metrics_tx.borrow());
        AddressBook {
            by_addr: self.by_addr.clone(),
            addr_limit: self.addr_limit,
            local_listener: self.local_listener,
            span: self.span.clone(),
            address_metrics_tx,
            last_address_log: None,
        }
    }
fn clone ( & self ) -> AddressBook { // The existing metrics might be outdated, but we avoid calling `update_metrics`, // so we don't overwrite the prometheus metrics from the main address book. let ( address_metrics_tx , _address_metrics_rx ) = watch :: channel ( * self . address_metrics_tx . borrow ( ) ) ; AddressBook { by_addr : self . by_addr . clone ( ) , addr_limit : self . addr_limit , local_listener : self . local_listener , span : self . span . clone ( ) , address_metrics_tx , last_address_log : None , } }
Clone the addresses, address limit, local listener address, and span.
Clone the addresses address limit local listener address and span .
&self