INNER CODE UNIT · Rust
drop
webrtc-rs/webrtc · src/data_channel/mod.rs:330
fn drop(&mut self) {
if let Some(mut data_channels) = self.inner.data_channel_events_tx.try_lock() {
data_channels.remove(&self.id);
}
}
}
impl crate::sealed::Sealed for DataChannelImpl {}
#[async_trait::async_trait]
impl DataChannel for DataChannelImpl {
// Documented on `DataChannel::label`.
async fn label(&self) -> Result<String> {
let mut peer_connection = self.inner.core.lock().await;
Ok(peer_connection
.data_channel(self.id)
.ok_or(Error::ErrDataChannelClosed)?