Coverage Report

Created: 2021-01-22 16:54

crossbeam-channel/src/counter.rs
Line
Count
Source (jump to first uncovered line)
1
//! Reference counter for channels.
2
3
use std::isize;
4
use std::ops;
5
use std::process;
6
use std::sync::atomic::{AtomicBool, AtomicUsize, Ordering};
7
8
/// Reference counter internals.
9
struct Counter<C> {
10
    /// The number of senders associated with the channel.
11
    senders: AtomicUsize,
12
13
    /// The number of receivers associated with the channel.
14
    receivers: AtomicUsize,
15
16
    /// Set to `true` if the last sender or the last receiver reference deallocates the channel.
17
    destroy: AtomicBool,
18
19
    /// The internal channel.
20
    chan: C,
21
}
22
23
/// Wraps a channel into the reference counter.
24
49.6k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
49.6k
    let counter = Box::into_raw(Box::new(Counter {
26
49.6k
        senders: AtomicUsize::new(1),
27
49.6k
        receivers: AtomicUsize::new(1),
28
49.6k
        destroy: AtomicBool::new(false),
29
49.6k
        chan,
30
49.6k
    }));
31
49.6k
    let s = Sender { counter };
32
49.6k
    let r = Receiver { counter };
33
49.6k
    (s, r)
34
49.6k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<i32>>
Line
Count
Source
24
8
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
8
    let counter = Box::into_raw(Box::new(Counter {
26
8
        senders: AtomicUsize::new(1),
27
8
        receivers: AtomicUsize::new(1),
28
8
        destroy: AtomicBool::new(false),
29
8
        chan,
30
8
    }));
31
8
    let s = Sender { counter };
32
8
    let r = Receiver { counter };
33
8
    (s, r)
34
8
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>
Line
Count
Source
24
1.00k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1.00k
    let counter = Box::into_raw(Box::new(Counter {
26
1.00k
        senders: AtomicUsize::new(1),
27
1.00k
        receivers: AtomicUsize::new(1),
28
1.00k
        destroy: AtomicBool::new(false),
29
1.00k
        chan,
30
1.00k
    }));
31
1.00k
    let s = Sender { counter };
32
1.00k
    let r = Receiver { counter };
33
1.00k
    (s, r)
34
1.00k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<zero::drops::DropCounter>>
Line
Count
Source
24
100
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
100
    let counter = Box::into_raw(Box::new(Counter {
26
100
        senders: AtomicUsize::new(1),
27
100
        receivers: AtomicUsize::new(1),
28
100
        destroy: AtomicBool::new(false),
29
100
        chan,
30
100
    }));
31
100
    let s = Sender { counter };
32
100
    let r = Receiver { counter };
33
100
    (s, r)
34
100
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<usize>>
Line
Count
Source
24
5
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
5
    let counter = Box::into_raw(Box::new(Counter {
26
5
        senders: AtomicUsize::new(1),
27
5
        receivers: AtomicUsize::new(1),
28
5
        destroy: AtomicBool::new(false),
29
5
        chan,
30
5
    }));
31
5
    let s = Sender { counter };
32
5
    let r = Receiver { counter };
33
5
    (s, r)
34
5
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<i32>>
Line
Count
Source
24
10.0k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
10.0k
    let counter = Box::into_raw(Box::new(Counter {
26
10.0k
        senders: AtomicUsize::new(1),
27
10.0k
        receivers: AtomicUsize::new(1),
28
10.0k
        destroy: AtomicBool::new(false),
29
10.0k
        chan,
30
10.0k
    }));
31
10.0k
    let s = Sender { counter };
32
10.0k
    let r = Receiver { counter };
33
10.0k
    (s, r)
34
10.0k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<()>>
Line
Count
Source
24
6
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
6
    let counter = Box::into_raw(Box::new(Counter {
26
6
        senders: AtomicUsize::new(1),
27
6
        receivers: AtomicUsize::new(1),
28
6
        destroy: AtomicBool::new(false),
29
6
        chan,
30
6
    }));
31
6
    let s = Sender { counter };
32
6
    let r = Receiver { counter };
33
6
    (s, r)
34
6
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<i32>>
Line
Count
Source
24
23
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
23
    let counter = Box::into_raw(Box::new(Counter {
26
23
        senders: AtomicUsize::new(1),
27
23
        receivers: AtomicUsize::new(1),
28
23
        destroy: AtomicBool::new(false),
29
23
        chan,
30
23
    }));
31
23
    let s = Sender { counter };
32
23
    let r = Receiver { counter };
33
23
    (s, r)
34
23
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<()>>
Line
Count
Source
24
29
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
29
    let counter = Box::into_raw(Box::new(Counter {
26
29
        senders: AtomicUsize::new(1),
27
29
        receivers: AtomicUsize::new(1),
28
29
        destroy: AtomicBool::new(false),
29
29
        chan,
30
29
    }));
31
29
    let s = Sender { counter };
32
29
    let r = Receiver { counter };
33
29
    (s, r)
34
29
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<()>>
Line
Count
Source
24
6
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
6
    let counter = Box::into_raw(Box::new(Counter {
26
6
        senders: AtomicUsize::new(1),
27
6
        receivers: AtomicUsize::new(1),
28
6
        destroy: AtomicBool::new(false),
29
6
        chan,
30
6
    }));
31
6
    let s = Sender { counter };
32
6
    let r = Receiver { counter };
33
6
    (s, r)
34
6
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<i32>>
Line
Count
Source
24
47
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
47
    let counter = Box::into_raw(Box::new(Counter {
26
47
        senders: AtomicUsize::new(1),
27
47
        receivers: AtomicUsize::new(1),
28
47
        destroy: AtomicBool::new(false),
29
47
        chan,
30
47
    }));
31
47
    let s = Sender { counter };
32
47
    let r = Receiver { counter };
33
47
    (s, r)
34
47
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>
Line
Count
Source
24
1.00k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1.00k
    let counter = Box::into_raw(Box::new(Counter {
26
1.00k
        senders: AtomicUsize::new(1),
27
1.00k
        receivers: AtomicUsize::new(1),
28
1.00k
        destroy: AtomicBool::new(false),
29
1.00k
        chan,
30
1.00k
    }));
31
1.00k
    let s = Sender { counter };
32
1.00k
    let r = Receiver { counter };
33
1.00k
    (s, r)
34
1.00k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<()>>
Line
Count
Source
24
9
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
9
    let counter = Box::into_raw(Box::new(Counter {
26
9
        senders: AtomicUsize::new(1),
27
9
        receivers: AtomicUsize::new(1),
28
9
        destroy: AtomicBool::new(false),
29
9
        chan,
30
9
    }));
31
9
    let s = Sender { counter };
32
9
    let r = Receiver { counter };
33
9
    (s, r)
34
9
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<usize>>
Line
Count
Source
24
10
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
10
    let counter = Box::into_raw(Box::new(Counter {
26
10
        senders: AtomicUsize::new(1),
27
10
        receivers: AtomicUsize::new(1),
28
10
        destroy: AtomicBool::new(false),
29
10
        chan,
30
10
    }));
31
10
    let s = Sender { counter };
32
10
    let r = Receiver { counter };
33
10
    (s, r)
34
10
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<usize>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<usize>>
Line
Count
Source
24
3
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
3
    let counter = Box::into_raw(Box::new(Counter {
26
3
        senders: AtomicUsize::new(1),
27
3
        receivers: AtomicUsize::new(1),
28
3
        destroy: AtomicBool::new(false),
29
3
        chan,
30
3
    }));
31
3
    let s = Sender { counter };
32
3
    let r = Receiver { counter };
33
3
    (s, r)
34
3
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>
Line
Count
Source
24
2.00k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2.00k
    let counter = Box::into_raw(Box::new(Counter {
26
2.00k
        senders: AtomicUsize::new(1),
27
2.00k
        receivers: AtomicUsize::new(1),
28
2.00k
        destroy: AtomicBool::new(false),
29
2.00k
        chan,
30
2.00k
    }));
31
2.00k
    let s = Sender { counter };
32
2.00k
    let r = Receiver { counter };
33
2.00k
    (s, r)
34
2.00k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<i32>>
Line
Count
Source
24
4
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
4
    let counter = Box::into_raw(Box::new(Counter {
26
4
        senders: AtomicUsize::new(1),
27
4
        receivers: AtomicUsize::new(1),
28
4
        destroy: AtomicBool::new(false),
29
4
        chan,
30
4
    }));
31
4
    let s = Sender { counter };
32
4
    let r = Receiver { counter };
33
4
    (s, r)
34
4
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<isize>>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<i32>>
Line
Count
Source
24
12
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
12
    let counter = Box::into_raw(Box::new(Counter {
26
12
        senders: AtomicUsize::new(1),
27
12
        receivers: AtomicUsize::new(1),
28
12
        destroy: AtomicBool::new(false),
29
12
        chan,
30
12
    }));
31
12
    let s = Sender { counter };
32
12
    let r = Receiver { counter };
33
12
    (s, r)
34
12
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<i32>>>
Line
Count
Source
24
5
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
5
    let counter = Box::into_raw(Box::new(Counter {
26
5
        senders: AtomicUsize::new(1),
27
5
        receivers: AtomicUsize::new(1),
28
5
        destroy: AtomicBool::new(false),
29
5
        chan,
30
5
    }));
31
5
    let s = Sender { counter };
32
5
    let r = Receiver { counter };
33
5
    (s, r)
34
5
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<i32>>>
Line
Count
Source
24
5
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
5
    let counter = Box::into_raw(Box::new(Counter {
26
5
        senders: AtomicUsize::new(1),
27
5
        receivers: AtomicUsize::new(1),
28
5
        destroy: AtomicBool::new(false),
29
5
        chan,
30
5
    }));
31
5
    let s = Sender { counter };
32
5
    let r = Receiver { counter };
33
5
    (s, r)
34
5
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<i32>>
Line
Count
Source
24
31
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
31
    let counter = Box::into_raw(Box::new(Counter {
26
31
        senders: AtomicUsize::new(1),
27
31
        receivers: AtomicUsize::new(1),
28
31
        destroy: AtomicBool::new(false),
29
31
        chan,
30
31
    }));
31
31
    let s = Sender { counter };
32
31
    let r = Receiver { counter };
33
31
    (s, r)
34
31
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<isize>>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<i32>>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<()>>
Line
Count
Source
24
35
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
35
    let counter = Box::into_raw(Box::new(Counter {
26
35
        senders: AtomicUsize::new(1),
27
35
        receivers: AtomicUsize::new(1),
28
35
        destroy: AtomicBool::new(false),
29
35
        chan,
30
35
    }));
31
35
    let s = Sender { counter };
32
35
    let r = Receiver { counter };
33
35
    (s, r)
34
35
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<i32>>
Line
Count
Source
24
59
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
59
    let counter = Box::into_raw(Box::new(Counter {
26
59
        senders: AtomicUsize::new(1),
27
59
        receivers: AtomicUsize::new(1),
28
59
        destroy: AtomicBool::new(false),
29
59
        chan,
30
59
    }));
31
59
    let s = Sender { counter };
32
59
    let r = Receiver { counter };
33
59
    (s, r)
34
59
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<()>>
Line
Count
Source
24
203
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
203
    let counter = Box::into_raw(Box::new(Counter {
26
203
        senders: AtomicUsize::new(1),
27
203
        receivers: AtomicUsize::new(1),
28
203
        destroy: AtomicBool::new(false),
29
203
        chan,
30
203
    }));
31
203
    let s = Sender { counter };
32
203
    let r = Receiver { counter };
33
203
    (s, r)
34
203
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<usize>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<()>>
Line
Count
Source
24
6
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
6
    let counter = Box::into_raw(Box::new(Counter {
26
6
        senders: AtomicUsize::new(1),
27
6
        receivers: AtomicUsize::new(1),
28
6
        destroy: AtomicBool::new(false),
29
6
        chan,
30
6
    }));
31
6
    let s = Sender { counter };
32
6
    let r = Receiver { counter };
33
6
    (s, r)
34
6
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<array::drops::DropCounter>>
Line
Count
Source
24
100
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
100
    let counter = Box::into_raw(Box::new(Counter {
26
100
        senders: AtomicUsize::new(1),
27
100
        receivers: AtomicUsize::new(1),
28
100
        destroy: AtomicBool::new(false),
29
100
        chan,
30
100
    }));
31
100
    let s = Sender { counter };
32
100
    let r = Receiver { counter };
33
100
    (s, r)
34
100
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>
Line
Count
Source
24
1.00k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1.00k
    let counter = Box::into_raw(Box::new(Counter {
26
1.00k
        senders: AtomicUsize::new(1),
27
1.00k
        receivers: AtomicUsize::new(1),
28
1.00k
        destroy: AtomicBool::new(false),
29
1.00k
        chan,
30
1.00k
    }));
31
1.00k
    let s = Sender { counter };
32
1.00k
    let r = Receiver { counter };
33
1.00k
    (s, r)
34
1.00k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<i32>>
Line
Count
Source
24
10.0k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
10.0k
    let counter = Box::into_raw(Box::new(Counter {
26
10.0k
        senders: AtomicUsize::new(1),
27
10.0k
        receivers: AtomicUsize::new(1),
28
10.0k
        destroy: AtomicBool::new(false),
29
10.0k
        chan,
30
10.0k
    }));
31
10.0k
    let s = Sender { counter };
32
10.0k
    let r = Receiver { counter };
33
10.0k
    (s, r)
34
10.0k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<()>>
Line
Count
Source
24
15
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
15
    let counter = Box::into_raw(Box::new(Counter {
26
15
        senders: AtomicUsize::new(1),
27
15
        receivers: AtomicUsize::new(1),
28
15
        destroy: AtomicBool::new(false),
29
15
        chan,
30
15
    }));
31
15
    let s = Sender { counter };
32
15
    let r = Receiver { counter };
33
15
    (s, r)
34
15
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<usize>>
Line
Count
Source
24
5
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
5
    let counter = Box::into_raw(Box::new(Counter {
26
5
        senders: AtomicUsize::new(1),
27
5
        receivers: AtomicUsize::new(1),
28
5
        destroy: AtomicBool::new(false),
29
5
        chan,
30
5
    }));
31
5
    let s = Sender { counter };
32
5
    let r = Receiver { counter };
33
5
    (s, r)
34
5
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<()>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<i32>>
Line
Count
Source
24
5
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
5
    let counter = Box::into_raw(Box::new(Counter {
26
5
        senders: AtomicUsize::new(1),
27
5
        receivers: AtomicUsize::new(1),
28
5
        destroy: AtomicBool::new(false),
29
5
        chan,
30
5
    }));
31
5
    let s = Sender { counter };
32
5
    let r = Receiver { counter };
33
5
    (s, r)
34
5
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<i32>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<usize>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<usize>>
Line
Count
Source
24
3
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
3
    let counter = Box::into_raw(Box::new(Counter {
26
3
        senders: AtomicUsize::new(1),
27
3
        receivers: AtomicUsize::new(1),
28
3
        destroy: AtomicBool::new(false),
29
3
        chan,
30
3
    }));
31
3
    let s = Sender { counter };
32
3
    let r = Receiver { counter };
33
3
    (s, r)
34
3
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<usize>>
Line
Count
Source
24
3
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
3
    let counter = Box::into_raw(Box::new(Counter {
26
3
        senders: AtomicUsize::new(1),
27
3
        receivers: AtomicUsize::new(1),
28
3
        destroy: AtomicBool::new(false),
29
3
        chan,
30
3
    }));
31
3
    let s = Sender { counter };
32
3
    let r = Receiver { counter };
33
3
    (s, r)
34
3
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<i32>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<list::drops::DropCounter>>
Line
Count
Source
24
100
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
100
    let counter = Box::into_raw(Box::new(Counter {
26
100
        senders: AtomicUsize::new(1),
27
100
        receivers: AtomicUsize::new(1),
28
100
        destroy: AtomicBool::new(false),
29
100
        chan,
30
100
    }));
31
100
    let s = Sender { counter };
32
100
    let r = Receiver { counter };
33
100
    (s, r)
34
100
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<i32>>
Line
Count
Source
24
10.0k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
10.0k
    let counter = Box::into_raw(Box::new(Counter {
26
10.0k
        senders: AtomicUsize::new(1),
27
10.0k
        receivers: AtomicUsize::new(1),
28
10.0k
        destroy: AtomicBool::new(false),
29
10.0k
        chan,
30
10.0k
    }));
31
10.0k
    let s = Sender { counter };
32
10.0k
    let r = Receiver { counter };
33
10.0k
    (s, r)
34
10.0k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<()>>
Line
Count
Source
24
5
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
5
    let counter = Box::into_raw(Box::new(Counter {
26
5
        senders: AtomicUsize::new(1),
27
5
        receivers: AtomicUsize::new(1),
28
5
        destroy: AtomicBool::new(false),
29
5
        chan,
30
5
    }));
31
5
    let s = Sender { counter };
32
5
    let r = Receiver { counter };
33
5
    (s, r)
34
5
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<usize>>
Line
Count
Source
24
5
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
5
    let counter = Box::into_raw(Box::new(Counter {
26
5
        senders: AtomicUsize::new(1),
27
5
        receivers: AtomicUsize::new(1),
28
5
        destroy: AtomicBool::new(false),
29
5
        chan,
30
5
    }));
31
5
    let s = Sender { counter };
32
5
    let r = Receiver { counter };
33
5
    (s, r)
34
5
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>
Line
Count
Source
24
1.00k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1.00k
    let counter = Box::into_raw(Box::new(Counter {
26
1.00k
        senders: AtomicUsize::new(1),
27
1.00k
        receivers: AtomicUsize::new(1),
28
1.00k
        destroy: AtomicBool::new(false),
29
1.00k
        chan,
30
1.00k
    }));
31
1.00k
    let s = Sender { counter };
32
1.00k
    let r = Receiver { counter };
33
1.00k
    (s, r)
34
1.00k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<alloc::string::String>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<i32>>
Line
Count
Source
24
1.13k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1.13k
    let counter = Box::into_raw(Box::new(Counter {
26
1.13k
        senders: AtomicUsize::new(1),
27
1.13k
        receivers: AtomicUsize::new(1),
28
1.13k
        destroy: AtomicBool::new(false),
29
1.13k
        chan,
30
1.13k
    }));
31
1.13k
    let s = Sender { counter };
32
1.13k
    let r = Receiver { counter };
33
1.13k
    (s, r)
34
1.13k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<u8>>
Line
Count
Source
24
4
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
4
    let counter = Box::into_raw(Box::new(Counter {
26
4
        senders: AtomicUsize::new(1),
27
4
        receivers: AtomicUsize::new(1),
28
4
        destroy: AtomicBool::new(false),
29
4
        chan,
30
4
    }));
31
4
    let s = Sender { counter };
32
4
    let r = Receiver { counter };
33
4
    (s, r)
34
4
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<i64>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<golang::zerosize::zero_size_struct::ZeroSize>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<u8>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<bool>>
Line
Count
Source
24
3
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
3
    let counter = Box::into_raw(Box::new(Counter {
26
3
        senders: AtomicUsize::new(1),
27
3
        receivers: AtomicUsize::new(1),
28
3
        destroy: AtomicBool::new(false),
29
3
        chan,
30
3
    }));
31
3
    let s = Sender { counter };
32
3
    let r = Receiver { counter };
33
3
    (s, r)
34
3
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<bool>>
Line
Count
Source
24
306
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
306
    let counter = Box::into_raw(Box::new(Counter {
26
306
        senders: AtomicUsize::new(1),
27
306
        receivers: AtomicUsize::new(1),
28
306
        destroy: AtomicBool::new(false),
29
306
        chan,
30
306
    }));
31
306
    let s = Sender { counter };
32
306
    let r = Receiver { counter };
33
306
    (s, r)
34
306
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<u32>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<i32>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<alloc::string::String>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<u32>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<usize>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<i32>>
Line
Count
Source
24
5.14k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
5.14k
    let counter = Box::into_raw(Box::new(Counter {
26
5.14k
        senders: AtomicUsize::new(1),
27
5.14k
        receivers: AtomicUsize::new(1),
28
5.14k
        destroy: AtomicBool::new(false),
29
5.14k
        chan,
30
5.14k
    }));
31
5.14k
    let s = Sender { counter };
32
5.14k
    let r = Receiver { counter };
33
5.14k
    (s, r)
34
5.14k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<[u8; 0]>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<i64>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any>>>
Line
Count
Source
24
1
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1
    let counter = Box::into_raw(Box::new(Counter {
26
1
        senders: AtomicUsize::new(1),
27
1
        receivers: AtomicUsize::new(1),
28
1
        destroy: AtomicBool::new(false),
29
1
        chan,
30
1
    }));
31
1
    let s = Sender { counter };
32
1
    let r = Receiver { counter };
33
1
    (s, r)
34
1
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<()>>
Line
Count
Source
24
32
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
32
    let counter = Box::into_raw(Box::new(Counter {
26
32
        senders: AtomicUsize::new(1),
27
32
        receivers: AtomicUsize::new(1),
28
32
        destroy: AtomicBool::new(false),
29
32
        chan,
30
32
    }));
31
32
    let s = Sender { counter };
32
32
    let r = Receiver { counter };
33
32
    (s, r)
34
32
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<usize>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<usize>>
Line
Count
Source
24
3
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
3
    let counter = Box::into_raw(Box::new(Counter {
26
3
        senders: AtomicUsize::new(1),
27
3
        receivers: AtomicUsize::new(1),
28
3
        destroy: AtomicBool::new(false),
29
3
        chan,
30
3
    }));
31
3
    let s = Sender { counter };
32
3
    let r = Receiver { counter };
33
3
    (s, r)
34
3
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<i32>>
Line
Count
Source
24
56
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
56
    let counter = Box::into_raw(Box::new(Counter {
26
56
        senders: AtomicUsize::new(1),
27
56
        receivers: AtomicUsize::new(1),
28
56
        destroy: AtomicBool::new(false),
29
56
        chan,
30
56
    }));
31
56
    let s = Sender { counter };
32
56
    let r = Receiver { counter };
33
56
    (s, r)
34
56
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<i32>>
Line
Count
Source
24
4
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
4
    let counter = Box::into_raw(Box::new(Counter {
26
4
        senders: AtomicUsize::new(1),
27
4
        receivers: AtomicUsize::new(1),
28
4
        destroy: AtomicBool::new(false),
29
4
        chan,
30
4
    }));
31
4
    let s = Sender { counter };
32
4
    let r = Receiver { counter };
33
4
    (s, r)
34
4
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<()>>
Line
Count
Source
24
7
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
7
    let counter = Box::into_raw(Box::new(Counter {
26
7
        senders: AtomicUsize::new(1),
27
7
        receivers: AtomicUsize::new(1),
28
7
        destroy: AtomicBool::new(false),
29
7
        chan,
30
7
    }));
31
7
    let s = Sender { counter };
32
7
    let r = Receiver { counter };
33
7
    (s, r)
34
7
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<i32>>
Line
Count
Source
24
32
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
32
    let counter = Box::into_raw(Box::new(Counter {
26
32
        senders: AtomicUsize::new(1),
27
32
        receivers: AtomicUsize::new(1),
28
32
        destroy: AtomicBool::new(false),
29
32
        chan,
30
32
    }));
31
32
    let s = Sender { counter };
32
32
    let r = Receiver { counter };
33
32
    (s, r)
34
32
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<()>>
Line
Count
Source
24
13
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
13
    let counter = Box::into_raw(Box::new(Counter {
26
13
        senders: AtomicUsize::new(1),
27
13
        receivers: AtomicUsize::new(1),
28
13
        destroy: AtomicBool::new(false),
29
13
        chan,
30
13
    }));
31
13
    let s = Sender { counter };
32
13
    let r = Receiver { counter };
33
13
    (s, r)
34
13
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<usize>>
Line
Count
Source
24
6
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
6
    let counter = Box::into_raw(Box::new(Counter {
26
6
        senders: AtomicUsize::new(1),
27
6
        receivers: AtomicUsize::new(1),
28
6
        destroy: AtomicBool::new(false),
29
6
        chan,
30
6
    }));
31
6
    let s = Sender { counter };
32
6
    let r = Receiver { counter };
33
6
    (s, r)
34
6
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>
Line
Count
Source
24
2.00k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2.00k
    let counter = Box::into_raw(Box::new(Counter {
26
2.00k
        senders: AtomicUsize::new(1),
27
2.00k
        receivers: AtomicUsize::new(1),
28
2.00k
        destroy: AtomicBool::new(false),
29
2.00k
        chan,
30
2.00k
    }));
31
2.00k
    let s = Sender { counter };
32
2.00k
    let r = Receiver { counter };
33
2.00k
    (s, r)
34
2.00k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>
Line
Count
Source
24
1.00k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
1.00k
    let counter = Box::into_raw(Box::new(Counter {
26
1.00k
        senders: AtomicUsize::new(1),
27
1.00k
        receivers: AtomicUsize::new(1),
28
1.00k
        destroy: AtomicBool::new(false),
29
1.00k
        chan,
30
1.00k
    }));
31
1.00k
    let s = Sender { counter };
32
1.00k
    let r = Receiver { counter };
33
1.00k
    (s, r)
34
1.00k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<()>>
Line
Count
Source
24
9
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
9
    let counter = Box::into_raw(Box::new(Counter {
26
9
        senders: AtomicUsize::new(1),
27
9
        receivers: AtomicUsize::new(1),
28
9
        destroy: AtomicBool::new(false),
29
9
        chan,
30
9
    }));
31
9
    let s = Sender { counter };
32
9
    let r = Receiver { counter };
33
9
    (s, r)
34
9
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<()>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>
Line
Count
Source
24
3.00k
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
3.00k
    let counter = Box::into_raw(Box::new(Counter {
26
3.00k
        senders: AtomicUsize::new(1),
27
3.00k
        receivers: AtomicUsize::new(1),
28
3.00k
        destroy: AtomicBool::new(false),
29
3.00k
        chan,
30
3.00k
    }));
31
3.00k
    let s = Sender { counter };
32
3.00k
    let r = Receiver { counter };
33
3.00k
    (s, r)
34
3.00k
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<usize>>
Line
Count
Source
24
3
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
3
    let counter = Box::into_raw(Box::new(Counter {
26
3
        senders: AtomicUsize::new(1),
27
3
        receivers: AtomicUsize::new(1),
28
3
        destroy: AtomicBool::new(false),
29
3
        chan,
30
3
    }));
31
3
    let s = Sender { counter };
32
3
    let r = Receiver { counter };
33
3
    (s, r)
34
3
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<()>>
Line
Count
Source
24
4
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
4
    let counter = Box::into_raw(Box::new(Counter {
26
4
        senders: AtomicUsize::new(1),
27
4
        receivers: AtomicUsize::new(1),
28
4
        destroy: AtomicBool::new(false),
29
4
        chan,
30
4
    }));
31
4
    let s = Sender { counter };
32
4
    let r = Receiver { counter };
33
4
    (s, r)
34
4
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<i32>>
Line
Count
Source
24
7
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
7
    let counter = Box::into_raw(Box::new(Counter {
26
7
        senders: AtomicUsize::new(1),
27
7
        receivers: AtomicUsize::new(1),
28
7
        destroy: AtomicBool::new(false),
29
7
        chan,
30
7
    }));
31
7
    let s = Sender { counter };
32
7
    let r = Receiver { counter };
33
7
    (s, r)
34
7
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::list::Channel<i32>>
Line
Count
Source
24
16
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
16
    let counter = Box::into_raw(Box::new(Counter {
26
16
        senders: AtomicUsize::new(1),
27
16
        receivers: AtomicUsize::new(1),
28
16
        destroy: AtomicBool::new(false),
29
16
        chan,
30
16
    }));
31
16
    let s = Sender { counter };
32
16
    let r = Receiver { counter };
33
16
    (s, r)
34
16
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::zero::Channel<usize>>
Line
Count
Source
24
4
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
4
    let counter = Box::into_raw(Box::new(Counter {
26
4
        senders: AtomicUsize::new(1),
27
4
        receivers: AtomicUsize::new(1),
28
4
        destroy: AtomicBool::new(false),
29
4
        chan,
30
4
    }));
31
4
    let s = Sender { counter };
32
4
    let r = Receiver { counter };
33
4
    (s, r)
34
4
}
crossbeam_channel::counter::new::<crossbeam_channel::flavors::array::Channel<usize>>
Line
Count
Source
24
2
pub(crate) fn new<C>(chan: C) -> (Sender<C>, Receiver<C>) {
25
2
    let counter = Box::into_raw(Box::new(Counter {
26
2
        senders: AtomicUsize::new(1),
27
2
        receivers: AtomicUsize::new(1),
28
2
        destroy: AtomicBool::new(false),
29
2
        chan,
30
2
    }));
31
2
    let s = Sender { counter };
32
2
    let r = Receiver { counter };
33
2
    (s, r)
34
2
}
35
36
/// The sending side.
37
pub(crate) struct Sender<C> {
38
    counter: *mut Counter<C>,
39
}
40
41
impl<C> Sender<C> {
42
    /// Returns the internal `Counter`.
43
28.6M
    fn counter(&self) -> &Counter<C> {
44
28.6M
        unsafe { &*self.counter }
45
28.6M
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
43
192k
    fn counter(&self) -> &Counter<C> {
44
192k
        unsafe { &*self.counter }
45
192k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
43
40.0k
    fn counter(&self) -> &Counter<C> {
44
40.0k
        unsafe { &*self.counter }
45
40.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
43
4.00k
    fn counter(&self) -> &Counter<C> {
44
4.00k
        unsafe { &*self.counter }
45
4.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<zero::drops::DropCounter>>>::counter
Line
Count
Source
43
155k
    fn counter(&self) -> &Counter<C> {
44
155k
        unsafe { &*self.counter }
45
155k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
43
248k
    fn counter(&self) -> &Counter<C> {
44
248k
        unsafe { &*self.counter }
45
248k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
43
46
    fn counter(&self) -> &Counter<C> {
44
46
        unsafe { &*self.counter }
45
46
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
43
396k
    fn counter(&self) -> &Counter<C> {
44
396k
        unsafe { &*self.counter }
45
396k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
43
805k
    fn counter(&self) -> &Counter<C> {
44
805k
        unsafe { &*self.counter }
45
805k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
43
77.9k
    fn counter(&self) -> &Counter<C> {
44
77.9k
        unsafe { &*self.counter }
45
77.9k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
43
5.25M
    fn counter(&self) -> &Counter<C> {
44
5.25M
        unsafe { &*self.counter }
45
5.25M
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
43
10.0k
    fn counter(&self) -> &Counter<C> {
44
10.0k
        unsafe { &*self.counter }
45
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
43
10.0k
    fn counter(&self) -> &Counter<C> {
44
10.0k
        unsafe { &*self.counter }
45
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
43
397k
    fn counter(&self) -> &Counter<C> {
44
397k
        unsafe { &*self.counter }
45
397k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
43
7.97k
    fn counter(&self) -> &Counter<C> {
44
7.97k
        unsafe { &*self.counter }
45
7.97k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
43
28.5k
    fn counter(&self) -> &Counter<C> {
44
28.5k
        unsafe { &*self.counter }
45
28.5k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
43
122k
    fn counter(&self) -> &Counter<C> {
44
122k
        unsafe { &*self.counter }
45
122k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
43
10.0k
    fn counter(&self) -> &Counter<C> {
44
10.0k
        unsafe { &*self.counter }
45
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<isize>>>>::counter
Line
Count
Source
43
16
    fn counter(&self) -> &Counter<C> {
44
16
        unsafe { &*self.counter }
45
16
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
43
21.8k
    fn counter(&self) -> &Counter<C> {
44
21.8k
        unsafe { &*self.counter }
45
21.8k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<isize>>>>::counter
Line
Count
Source
43
4
    fn counter(&self) -> &Counter<C> {
44
4
        unsafe { &*self.counter }
45
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
43
101k
    fn counter(&self) -> &Counter<C> {
44
101k
        unsafe { &*self.counter }
45
101k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
43
10.8k
    fn counter(&self) -> &Counter<C> {
44
10.8k
        unsafe { &*self.counter }
45
10.8k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<i32>>>>::counter
Line
Count
Source
43
28
    fn counter(&self) -> &Counter<C> {
44
28
        unsafe { &*self.counter }
45
28
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
43
54
    fn counter(&self) -> &Counter<C> {
44
54
        unsafe { &*self.counter }
45
54
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<i32>>>>::counter
Line
Count
Source
43
4
    fn counter(&self) -> &Counter<C> {
44
4
        unsafe { &*self.counter }
45
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<i32>>>>::counter
Line
Count
Source
43
28
    fn counter(&self) -> &Counter<C> {
44
28
        unsafe { &*self.counter }
45
28
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
43
34.9k
    fn counter(&self) -> &Counter<C> {
44
34.9k
        unsafe { &*self.counter }
45
34.9k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
43
327
    fn counter(&self) -> &Counter<C> {
44
327
        unsafe { &*self.counter }
45
327
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
43
410
    fn counter(&self) -> &Counter<C> {
44
410
        unsafe { &*self.counter }
45
410
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<array::drops::DropCounter>>>::counter
Line
Count
Source
43
493k
    fn counter(&self) -> &Counter<C> {
44
493k
        unsafe { &*self.counter }
45
493k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
43
4.00k
    fn counter(&self) -> &Counter<C> {
44
4.00k
        unsafe { &*self.counter }
45
4.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
43
344k
    fn counter(&self) -> &Counter<C> {
44
344k
        unsafe { &*self.counter }
45
344k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
43
139k
    fn counter(&self) -> &Counter<C> {
44
139k
        unsafe { &*self.counter }
45
139k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
43
128k
    fn counter(&self) -> &Counter<C> {
44
128k
        unsafe { &*self.counter }
45
128k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
43
51
    fn counter(&self) -> &Counter<C> {
44
51
        unsafe { &*self.counter }
45
51
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
43
36
    fn counter(&self) -> &Counter<C> {
44
36
        unsafe { &*self.counter }
45
36
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
43
5
    fn counter(&self) -> &Counter<C> {
44
5
        unsafe { &*self.counter }
45
5
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
43
8
    fn counter(&self) -> &Counter<C> {
44
8
        unsafe { &*self.counter }
45
8
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
43
11
    fn counter(&self) -> &Counter<C> {
44
11
        unsafe { &*self.counter }
45
11
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
43
11
    fn counter(&self) -> &Counter<C> {
44
11
        unsafe { &*self.counter }
45
11
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
43
5
    fn counter(&self) -> &Counter<C> {
44
5
        unsafe { &*self.counter }
45
5
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<list::drops::DropCounter>>>::counter
Line
Count
Source
43
523k
    fn counter(&self) -> &Counter<C> {
44
523k
        unsafe { &*self.counter }
45
523k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
43
4.00k
    fn counter(&self) -> &Counter<C> {
44
4.00k
        unsafe { &*self.counter }
45
4.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
43
282k
    fn counter(&self) -> &Counter<C> {
44
282k
        unsafe { &*self.counter }
45
282k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
43
142k
    fn counter(&self) -> &Counter<C> {
44
142k
        unsafe { &*self.counter }
45
142k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
43
128k
    fn counter(&self) -> &Counter<C> {
44
128k
        unsafe { &*self.counter }
45
128k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::string::String>>>::counter
Line
Count
Source
43
13
    fn counter(&self) -> &Counter<C> {
44
13
        unsafe { &*self.counter }
45
13
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
43
3.00k
    fn counter(&self) -> &Counter<C> {
44
3.00k
        unsafe { &*self.counter }
45
3.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<u32>>>::counter
Line
Count
Source
43
20
    fn counter(&self) -> &Counter<C> {
44
20
        unsafe { &*self.counter }
45
20
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<bool>>>::counter
Line
Count
Source
43
1.90k
    fn counter(&self) -> &Counter<C> {
44
1.90k
        unsafe { &*self.counter }
45
1.90k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<u32>>>::counter
Line
Count
Source
43
39
    fn counter(&self) -> &Counter<C> {
44
39
        unsafe { &*self.counter }
45
39
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
43
382k
    fn counter(&self) -> &Counter<C> {
44
382k
        unsafe { &*self.counter }
45
382k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i64>>>::counter
Line
Count
Source
43
10
    fn counter(&self) -> &Counter<C> {
44
10
        unsafe { &*self.counter }
45
10
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<u8>>>::counter
Line
Count
Source
43
41.5k
    fn counter(&self) -> &Counter<C> {
44
41.5k
        unsafe { &*self.counter }
45
41.5k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<bool>>>::counter
Line
Count
Source
43
6.00k
    fn counter(&self) -> &Counter<C> {
44
6.00k
        unsafe { &*self.counter }
45
6.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<[u8; 0]>>>::counter
Line
Count
Source
43
3
    fn counter(&self) -> &Counter<C> {
44
3
        unsafe { &*self.counter }
45
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i64>>>::counter
Line
Count
Source
43
16
    fn counter(&self) -> &Counter<C> {
44
16
        unsafe { &*self.counter }
45
16
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
43
1.93M
    fn counter(&self) -> &Counter<C> {
44
1.93M
        unsafe { &*self.counter }
45
1.93M
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<u8>>>::counter
Line
Count
Source
43
60.0k
    fn counter(&self) -> &Counter<C> {
44
60.0k
        unsafe { &*self.counter }
45
60.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::counter
Line
Count
Source
43
22
    fn counter(&self) -> &Counter<C> {
44
22
        unsafe { &*self.counter }
45
22
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::string::String>>>::counter
Line
Count
Source
43
10
    fn counter(&self) -> &Counter<C> {
44
10
        unsafe { &*self.counter }
45
10
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
43
600k
    fn counter(&self) -> &Counter<C> {
44
600k
        unsafe { &*self.counter }
45
600k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<golang::zerosize::zero_size_struct::ZeroSize>>>::counter
Line
Count
Source
43
3
    fn counter(&self) -> &Counter<C> {
44
3
        unsafe { &*self.counter }
45
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
43
10.0k
    fn counter(&self) -> &Counter<C> {
44
10.0k
        unsafe { &*self.counter }
45
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
43
806k
    fn counter(&self) -> &Counter<C> {
44
806k
        unsafe { &*self.counter }
45
806k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
43
10.0k
    fn counter(&self) -> &Counter<C> {
44
10.0k
        unsafe { &*self.counter }
45
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
43
396k
    fn counter(&self) -> &Counter<C> {
44
396k
        unsafe { &*self.counter }
45
396k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
43
45.9k
    fn counter(&self) -> &Counter<C> {
44
45.9k
        unsafe { &*self.counter }
45
45.9k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
43
96.3k
    fn counter(&self) -> &Counter<C> {
44
96.3k
        unsafe { &*self.counter }
45
96.3k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
43
6.48k
    fn counter(&self) -> &Counter<C> {
44
6.48k
        unsafe { &*self.counter }
45
6.48k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
43
10.0k
    fn counter(&self) -> &Counter<C> {
44
10.0k
        unsafe { &*self.counter }
45
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
43
13.0M
    fn counter(&self) -> &Counter<C> {
44
13.0M
        unsafe { &*self.counter }
45
13.0M
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
43
395k
    fn counter(&self) -> &Counter<C> {
44
395k
        unsafe { &*self.counter }
45
395k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
43
86.2k
    fn counter(&self) -> &Counter<C> {
44
86.2k
        unsafe { &*self.counter }
45
86.2k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
43
10.0k
    fn counter(&self) -> &Counter<C> {
44
10.0k
        unsafe { &*self.counter }
45
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
43
193k
    fn counter(&self) -> &Counter<C> {
44
193k
        unsafe { &*self.counter }
45
193k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
43
10.0k
    fn counter(&self) -> &Counter<C> {
44
10.0k
        unsafe { &*self.counter }
45
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
43
86.3k
    fn counter(&self) -> &Counter<C> {
44
86.3k
        unsafe { &*self.counter }
45
86.3k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
43
212k
    fn counter(&self) -> &Counter<C> {
44
212k
        unsafe { &*self.counter }
45
212k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
43
78
    fn counter(&self) -> &Counter<C> {
44
78
        unsafe { &*self.counter }
45
78
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
43
77
    fn counter(&self) -> &Counter<C> {
44
77
        unsafe { &*self.counter }
45
77
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
43
138k
    fn counter(&self) -> &Counter<C> {
44
138k
        unsafe { &*self.counter }
45
138k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
43
15.0k
    fn counter(&self) -> &Counter<C> {
44
15.0k
        unsafe { &*self.counter }
45
15.0k
    }
46
47
    /// Acquires another sender reference.
48
968k
    pub(crate) fn acquire(&self) -> Sender<C> {
49
968k
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
968k
51
968k
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
968k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
968k
        // just abort when the count becomes very large.
54
968k
        if count > isize::MAX as usize {
55
0
            process::abort();
56
968k
        }
57
968k
58
968k
        Sender {
59
968k
            counter: self.counter,
60
968k
        }
61
968k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::acquire
Line
Count
Source
48
1
    pub(crate) fn acquire(&self) -> Sender<C> {
49
1
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
1
51
1
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
1
        // just abort when the count becomes very large.
54
1
        if count > isize::MAX as usize {
55
0
            process::abort();
56
1
        }
57
1
58
1
        Sender {
59
1
            counter: self.counter,
60
1
        }
61
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::acquire
Line
Count
Source
48
3
    pub(crate) fn acquire(&self) -> Sender<C> {
49
3
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
3
51
3
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
3
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
3
        // just abort when the count becomes very large.
54
3
        if count > isize::MAX as usize {
55
0
            process::abort();
56
3
        }
57
3
58
3
        Sender {
59
3
            counter: self.counter,
60
3
        }
61
3
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<isize>>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::acquire
Line
Count
Source
48
115
    pub(crate) fn acquire(&self) -> Sender<C> {
49
115
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
115
51
115
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
115
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
115
        // just abort when the count becomes very large.
54
115
        if count > isize::MAX as usize {
55
0
            process::abort();
56
115
        }
57
115
58
115
        Sender {
59
115
            counter: self.counter,
60
115
        }
61
115
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::acquire
Line
Count
Source
48
103
    pub(crate) fn acquire(&self) -> Sender<C> {
49
103
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
103
51
103
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
103
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
103
        // just abort when the count becomes very large.
54
103
        if count > isize::MAX as usize {
55
0
            process::abort();
56
103
        }
57
103
58
103
        Sender {
59
103
            counter: self.counter,
60
103
        }
61
103
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::acquire
Line
Count
Source
48
13
    pub(crate) fn acquire(&self) -> Sender<C> {
49
13
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
13
51
13
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
13
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
13
        // just abort when the count becomes very large.
54
13
        if count > isize::MAX as usize {
55
0
            process::abort();
56
13
        }
57
13
58
13
        Sender {
59
13
            counter: self.counter,
60
13
        }
61
13
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::acquire
Line
Count
Source
48
101
    pub(crate) fn acquire(&self) -> Sender<C> {
49
101
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
101
51
101
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
101
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
101
        // just abort when the count becomes very large.
54
101
        if count > isize::MAX as usize {
55
0
            process::abort();
56
101
        }
57
101
58
101
        Sender {
59
101
            counter: self.counter,
60
101
        }
61
101
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::acquire
Line
Count
Source
48
1
    pub(crate) fn acquire(&self) -> Sender<C> {
49
1
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
1
51
1
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
1
        // just abort when the count becomes very large.
54
1
        if count > isize::MAX as usize {
55
0
            process::abort();
56
1
        }
57
1
58
1
        Sender {
59
1
            counter: self.counter,
60
1
        }
61
1
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<isize>>>>::acquire
Line
Count
Source
48
2
    pub(crate) fn acquire(&self) -> Sender<C> {
49
2
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
2
51
2
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
2
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
2
        // just abort when the count becomes very large.
54
2
        if count > isize::MAX as usize {
55
0
            process::abort();
56
2
        }
57
2
58
2
        Sender {
59
2
            counter: self.counter,
60
2
        }
61
2
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::acquire
Line
Count
Source
48
19
    pub(crate) fn acquire(&self) -> Sender<C> {
49
19
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
19
51
19
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
19
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
19
        // just abort when the count becomes very large.
54
19
        if count > isize::MAX as usize {
55
0
            process::abort();
56
19
        }
57
19
58
19
        Sender {
59
19
            counter: self.counter,
60
19
        }
61
19
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<isize>>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::acquire
Line
Count
Source
48
1
    pub(crate) fn acquire(&self) -> Sender<C> {
49
1
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
1
51
1
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
1
        // just abort when the count becomes very large.
54
1
        if count > isize::MAX as usize {
55
0
            process::abort();
56
1
        }
57
1
58
1
        Sender {
59
1
            counter: self.counter,
60
1
        }
61
1
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::acquire
Line
Count
Source
48
1
    pub(crate) fn acquire(&self) -> Sender<C> {
49
1
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
1
51
1
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
1
        // just abort when the count becomes very large.
54
1
        if count > isize::MAX as usize {
55
0
            process::abort();
56
1
        }
57
1
58
1
        Sender {
59
1
            counter: self.counter,
60
1
        }
61
1
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::acquire
Line
Count
Source
48
1
    pub(crate) fn acquire(&self) -> Sender<C> {
49
1
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
1
51
1
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
1
        // just abort when the count becomes very large.
54
1
        if count > isize::MAX as usize {
55
0
            process::abort();
56
1
        }
57
1
58
1
        Sender {
59
1
            counter: self.counter,
60
1
        }
61
1
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::string::String>>>::acquire
Line
Count
Source
48
2
    pub(crate) fn acquire(&self) -> Sender<C> {
49
2
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
2
51
2
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
2
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
2
        // just abort when the count becomes very large.
54
2
        if count > isize::MAX as usize {
55
0
            process::abort();
56
2
        }
57
2
58
2
        Sender {
59
2
            counter: self.counter,
60
2
        }
61
2
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::string::String>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<bool>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::acquire
Line
Count
Source
48
4
    pub(crate) fn acquire(&self) -> Sender<C> {
49
4
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
4
51
4
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
4
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
4
        // just abort when the count becomes very large.
54
4
        if count > isize::MAX as usize {
55
0
            process::abort();
56
4
        }
57
4
58
4
        Sender {
59
4
            counter: self.counter,
60
4
        }
61
4
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::string::String>>>::acquire
Line
Count
Source
48
2
    pub(crate) fn acquire(&self) -> Sender<C> {
49
2
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
2
51
2
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
2
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
2
        // just abort when the count becomes very large.
54
2
        if count > isize::MAX as usize {
55
0
            process::abort();
56
2
        }
57
2
58
2
        Sender {
59
2
            counter: self.counter,
60
2
        }
61
2
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<bool>>>::acquire
Line
Count
Source
48
2.00k
    pub(crate) fn acquire(&self) -> Sender<C> {
49
2.00k
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
2.00k
51
2.00k
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
2.00k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
2.00k
        // just abort when the count becomes very large.
54
2.00k
        if count > isize::MAX as usize {
55
0
            process::abort();
56
2.00k
        }
57
2.00k
58
2.00k
        Sender {
59
2.00k
            counter: self.counter,
60
2.00k
        }
61
2.00k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::acquire
Line
Count
Source
48
1.00k
    pub(crate) fn acquire(&self) -> Sender<C> {
49
1.00k
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
1.00k
51
1.00k
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
1.00k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
1.00k
        // just abort when the count becomes very large.
54
1.00k
        if count > isize::MAX as usize {
55
0
            process::abort();
56
1.00k
        }
57
1.00k
58
1.00k
        Sender {
59
1.00k
            counter: self.counter,
60
1.00k
        }
61
1.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::acquire
Line
Count
Source
48
71.2k
    pub(crate) fn acquire(&self) -> Sender<C> {
49
71.2k
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
71.2k
51
71.2k
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
71.2k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
71.2k
        // just abort when the count becomes very large.
54
71.2k
        if count > isize::MAX as usize {
55
0
            process::abort();
56
71.2k
        }
57
71.2k
58
71.2k
        Sender {
59
71.2k
            counter: self.counter,
60
71.2k
        }
61
71.2k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::acquire
Line
Count
Source
48
200k
    pub(crate) fn acquire(&self) -> Sender<C> {
49
200k
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
200k
51
200k
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
200k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
200k
        // just abort when the count becomes very large.
54
200k
        if count > isize::MAX as usize {
55
0
            process::abort();
56
200k
        }
57
200k
58
200k
        Sender {
59
200k
            counter: self.counter,
60
200k
        }
61
200k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<u8>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<u32>>>::acquire
Line
Count
Source
48
4
    pub(crate) fn acquire(&self) -> Sender<C> {
49
4
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
4
51
4
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
4
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
4
        // just abort when the count becomes very large.
54
4
        if count > isize::MAX as usize {
55
0
            process::abort();
56
4
        }
57
4
58
4
        Sender {
59
4
            counter: self.counter,
60
4
        }
61
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i64>>>::acquire
Line
Count
Source
48
3
    pub(crate) fn acquire(&self) -> Sender<C> {
49
3
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
3
51
3
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
3
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
3
        // just abort when the count becomes very large.
54
3
        if count > isize::MAX as usize {
55
0
            process::abort();
56
3
        }
57
3
58
3
        Sender {
59
3
            counter: self.counter,
60
3
        }
61
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::acquire
Line
Count
Source
48
663k
    pub(crate) fn acquire(&self) -> Sender<C> {
49
663k
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
663k
51
663k
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
663k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
663k
        // just abort when the count becomes very large.
54
663k
        if count > isize::MAX as usize {
55
0
            process::abort();
56
663k
        }
57
663k
58
663k
        Sender {
59
663k
            counter: self.counter,
60
663k
        }
61
663k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<u8>>>::acquire
Line
Count
Source
48
20.0k
    pub(crate) fn acquire(&self) -> Sender<C> {
49
20.0k
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
20.0k
51
20.0k
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
20.0k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
20.0k
        // just abort when the count becomes very large.
54
20.0k
        if count > isize::MAX as usize {
55
0
            process::abort();
56
20.0k
        }
57
20.0k
58
20.0k
        Sender {
59
20.0k
            counter: self.counter,
60
20.0k
        }
61
20.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i64>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<u32>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i64>>>::acquire
Line
Count
Source
48
2
    pub(crate) fn acquire(&self) -> Sender<C> {
49
2
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
2
51
2
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
2
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
2
        // just abort when the count becomes very large.
54
2
        if count > isize::MAX as usize {
55
0
            process::abort();
56
2
        }
57
2
58
2
        Sender {
59
2
            counter: self.counter,
60
2
        }
61
2
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<bool>>>::acquire
Line
Count
Source
48
327
    pub(crate) fn acquire(&self) -> Sender<C> {
49
327
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
327
51
327
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
327
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
327
        // just abort when the count becomes very large.
54
327
        if count > isize::MAX as usize {
55
0
            process::abort();
56
327
        }
57
327
58
327
        Sender {
59
327
            counter: self.counter,
60
327
        }
61
327
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<u32>>>::acquire
Line
Count
Source
48
10
    pub(crate) fn acquire(&self) -> Sender<C> {
49
10
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
10
51
10
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
10
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
10
        // just abort when the count becomes very large.
54
10
        if count > isize::MAX as usize {
55
0
            process::abort();
56
10
        }
57
10
58
10
        Sender {
59
10
            counter: self.counter,
60
10
        }
61
10
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<u8>>>::acquire
Line
Count
Source
48
10.0k
    pub(crate) fn acquire(&self) -> Sender<C> {
49
10.0k
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
10.0k
51
10.0k
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
10.0k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
10.0k
        // just abort when the count becomes very large.
54
10.0k
        if count > isize::MAX as usize {
55
0
            process::abort();
56
10.0k
        }
57
10.0k
58
10.0k
        Sender {
59
10.0k
            counter: self.counter,
60
10.0k
        }
61
10.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::acquire
Line
Count
Source
48
1
    pub(crate) fn acquire(&self) -> Sender<C> {
49
1
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
1
51
1
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
1
        // just abort when the count becomes very large.
54
1
        if count > isize::MAX as usize {
55
0
            process::abort();
56
1
        }
57
1
58
1
        Sender {
59
1
            counter: self.counter,
60
1
        }
61
1
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::acquire
Line
Count
Source
48
3
    pub(crate) fn acquire(&self) -> Sender<C> {
49
3
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
3
51
3
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
3
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
3
        // just abort when the count becomes very large.
54
3
        if count > isize::MAX as usize {
55
0
            process::abort();
56
3
        }
57
3
58
3
        Sender {
59
3
            counter: self.counter,
60
3
        }
61
3
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::acquire
Line
Count
Source
48
3
    pub(crate) fn acquire(&self) -> Sender<C> {
49
3
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
3
51
3
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
3
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
3
        // just abort when the count becomes very large.
54
3
        if count > isize::MAX as usize {
55
0
            process::abort();
56
3
        }
57
3
58
3
        Sender {
59
3
            counter: self.counter,
60
3
        }
61
3
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::acquire
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::acquire
Line
Count
Source
48
1
    pub(crate) fn acquire(&self) -> Sender<C> {
49
1
        let count = self.counter().senders.fetch_add(1, Ordering::Relaxed);
50
1
51
1
        // Cloning senders and calling `mem::forget` on the clones could potentially overflow the
52
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
53
1
        // just abort when the count becomes very large.
54
1
        if count > isize::MAX as usize {
55
0
            process::abort();
56
1
        }
57
1
58
1
        Sender {
59
1
            counter: self.counter,
60
1
        }
61
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::acquire
62
63
    /// Releases the sender reference.
64
    ///
65
    /// Function `disconnect` will be called if this is the last sender reference.
66
1.01M
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1.01M
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
49.6k
            disconnect(&self.counter().chan);
69
49.6k
70
49.6k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
34.5k
                drop(Box::from_raw(self.counter));
72
34.5k
            }
15.0k
73
966k
        }
74
1.01M
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
5
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
5
            disconnect(&self.counter().chan);
69
5
70
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
4
                drop(Box::from_raw(self.counter));
72
4
            }
1
73
0
        }
74
5
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
8
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
8
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
8
            disconnect(&self.counter().chan);
69
8
70
8
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
4
                drop(Box::from_raw(self.counter));
72
4
            }
73
0
        }
74
8
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<zero::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Sender<zero::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
100
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
100
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
100
            disconnect(&self.counter().chan);
69
100
70
100
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
100
            }
73
0
        }
74
100
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
8
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
8
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
8
            disconnect(&self.counter().chan);
69
8
70
8
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
6
                drop(Box::from_raw(self.counter));
72
6
            }
2
73
0
        }
74
8
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<zero::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Sender<zero::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
10.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
10.0k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
10.0k
            disconnect(&self.counter().chan);
69
10.0k
70
10.0k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
10.0k
                drop(Box::from_raw(self.counter));
72
10.0k
            }
0
73
0
        }
74
10.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1.00k
            disconnect(&self.counter().chan);
69
1.00k
70
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
492
                drop(Box::from_raw(self.counter));
72
509
            }
73
0
        }
74
1.00k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<zero::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Sender<zero::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
29
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
29
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
29
            disconnect(&self.counter().chan);
69
29
70
29
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
9
                drop(Box::from_raw(self.counter));
72
20
            }
73
0
        }
74
29
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1.00k
            disconnect(&self.counter().chan);
69
1.00k
70
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
1
                drop(Box::from_raw(self.counter));
72
1.00k
            }
73
0
        }
74
1.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
10
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
10
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
10
            disconnect(&self.counter().chan);
69
10
70
10
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
6
                drop(Box::from_raw(self.counter));
72
6
            }
4
73
0
        }
74
10
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
4
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
4
            disconnect(&self.counter().chan);
69
4
70
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
4
                drop(Box::from_raw(self.counter));
72
4
            }
0
73
0
        }
74
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
3
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
3
            disconnect(&self.counter().chan);
69
3
70
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
3
                drop(Box::from_raw(self.counter));
72
3
            }
0
73
0
        }
74
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
47
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
47
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
47
            disconnect(&self.counter().chan);
69
47
70
47
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
47
                drop(Box::from_raw(self.counter));
72
47
            }
0
73
0
        }
74
47
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
6
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
6
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
6
            disconnect(&self.counter().chan);
69
6
70
6
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
6
                drop(Box::from_raw(self.counter));
72
6
            }
0
73
0
        }
74
6
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
24
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
24
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
23
            disconnect(&self.counter().chan);
69
23
70
23
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
17
                drop(Box::from_raw(self.counter));
72
17
            }
6
73
1
        }
74
24
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
2
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
2
                drop(Box::from_raw(self.counter));
72
2
            }
0
73
0
        }
74
2
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
2.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
2.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2.00k
            disconnect(&self.counter().chan);
69
2.00k
70
2.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
352
                drop(Box::from_raw(self.counter));
72
1.65k
            }
73
0
        }
74
2.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
12
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
12
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
9
            disconnect(&self.counter().chan);
69
9
70
9
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
6
                drop(Box::from_raw(self.counter));
72
6
            }
3
73
3
        }
74
12
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
203
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
203
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
203
            disconnect(&self.counter().chan);
69
203
70
203
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
102
                drop(Box::from_raw(self.counter));
72
102
            }
101
73
0
        }
74
203
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
13
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
13
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
12
            disconnect(&self.counter().chan);
69
12
70
12
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
10
                drop(Box::from_raw(self.counter));
72
10
            }
2
73
1
        }
74
13
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<isize>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<isize>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
1
                drop(Box::from_raw(self.counter));
72
1
            }
0
73
0
        }
74
1
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<i32>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<i32>> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
5
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
5
            disconnect(&self.counter().chan);
69
5
70
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
2
                drop(Box::from_raw(self.counter));
72
3
            }
73
0
        }
74
5
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<isize>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<isize>> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
5
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
3
            disconnect(&self.counter().chan);
69
3
70
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
2
                drop(Box::from_raw(self.counter));
72
2
            }
1
73
2
        }
74
5
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
72
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
72
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
59
            disconnect(&self.counter().chan);
69
59
70
59
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
28
                drop(Box::from_raw(self.counter));
72
31
            }
73
13
        }
74
72
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
109
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
109
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
6
            disconnect(&self.counter().chan);
69
6
70
6
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
2
                drop(Box::from_raw(self.counter));
72
4
            }
73
103
        }
74
109
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
150
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
150
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
35
            disconnect(&self.counter().chan);
69
35
70
35
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
22
                drop(Box::from_raw(self.counter));
72
22
            }
13
73
115
        }
74
150
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
103
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
103
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
2
            }
73
101
        }
74
103
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<i32>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<i32>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
1
                drop(Box::from_raw(self.counter));
72
1
            }
0
73
0
        }
74
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<isize>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<isize>> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
51
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
51
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
32
            disconnect(&self.counter().chan);
69
32
70
32
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
13
                drop(Box::from_raw(self.counter));
72
19
            }
73
19
        }
74
51
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<i32>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<i32>> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
5
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
5
            disconnect(&self.counter().chan);
69
5
70
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
3
                drop(Box::from_raw(self.counter));
72
3
            }
2
73
0
        }
74
5
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<array::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Sender<array::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1.00k
            disconnect(&self.counter().chan);
69
1.00k
70
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
607
                drop(Box::from_raw(self.counter));
72
607
            }
394
73
0
        }
74
1.00k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
18
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
18
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
18
            disconnect(&self.counter().chan);
69
18
70
18
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
16
                drop(Box::from_raw(self.counter));
72
16
            }
2
73
0
        }
74
18
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
5
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
5
            disconnect(&self.counter().chan);
69
5
70
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
5
                drop(Box::from_raw(self.counter));
72
5
            }
0
73
0
        }
74
5
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
10.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
10.0k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
10.0k
            disconnect(&self.counter().chan);
69
10.0k
70
10.0k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
10.0k
                drop(Box::from_raw(self.counter));
72
10.0k
            }
4
73
0
        }
74
10.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<array::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Sender<array::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<array::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Sender<array::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
100
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
100
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
100
            disconnect(&self.counter().chan);
69
100
70
100
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
100
            }
73
0
        }
74
100
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
1
            }
73
0
        }
74
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
7
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
7
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
7
            disconnect(&self.counter().chan);
69
7
70
7
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
1
                drop(Box::from_raw(self.counter));
72
6
            }
73
0
        }
74
7
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
1
                drop(Box::from_raw(self.counter));
72
1
            }
0
73
0
        }
74
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
4
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
3
            disconnect(&self.counter().chan);
69
3
70
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
3
                drop(Box::from_raw(self.counter));
72
3
            }
0
73
1
        }
74
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
4
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
3
            disconnect(&self.counter().chan);
69
3
70
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
3
                drop(Box::from_raw(self.counter));
72
3
            }
0
73
1
        }
74
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
3
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
2
                drop(Box::from_raw(self.counter));
72
2
            }
0
73
1
        }
74
3
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
1
                drop(Box::from_raw(self.counter));
72
1
            }
0
73
0
        }
74
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<list::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Sender<list::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
8
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
8
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
8
            disconnect(&self.counter().chan);
69
8
70
8
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
6
                drop(Box::from_raw(self.counter));
72
6
            }
2
73
0
        }
74
8
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
5
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
5
            disconnect(&self.counter().chan);
69
5
70
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
4
                drop(Box::from_raw(self.counter));
72
4
            }
1
73
0
        }
74
5
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<list::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Sender<list::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
100
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
100
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
100
            disconnect(&self.counter().chan);
69
100
70
100
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
100
            }
73
0
        }
74
100
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1.00k
            disconnect(&self.counter().chan);
69
1.00k
70
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
283
                drop(Box::from_raw(self.counter));
72
718
            }
73
0
        }
74
1.00k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<list::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Sender<list::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
10.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
10.0k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
10.0k
            disconnect(&self.counter().chan);
69
10.0k
70
10.0k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
10.0k
                drop(Box::from_raw(self.counter));
72
10.0k
            }
4
73
0
        }
74
10.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any>> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i64>>>::release::<<crossbeam_channel::channel::Sender<i64> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<bool>>>::release::<<crossbeam_channel::channel::Sender<bool> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
2.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
2.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
3
            disconnect(&self.counter().chan);
69
3
70
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
3
            }
73
2.00k
        }
74
2.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
665k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
665k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
5.11k
            disconnect(&self.counter().chan);
69
5.11k
70
5.11k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
5.11k
            }
73
660k
        }
74
665k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
5
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
1
                drop(Box::from_raw(self.counter));
72
1
            }
0
73
4
        }
74
5
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i64>>>::release::<<crossbeam_channel::channel::Sender<i64> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
4
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
1
            }
73
3
        }
74
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<u32>>>::release::<<crossbeam_channel::channel::Sender<u32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
12
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
12
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
2
            }
73
10
        }
74
12
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any>> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::string::String>>>::release::<<crossbeam_channel::channel::Sender<alloc::string::String> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
73.2k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
73.2k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1.13k
            disconnect(&self.counter().chan);
69
1.13k
70
1.13k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
1.13k
            }
73
72.1k
        }
74
73.2k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::string::String>>>::release::<<crossbeam_channel::channel::Sender<alloc::string::String> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
3
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
1
            }
73
2
        }
74
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i64>>>::release::<<crossbeam_channel::channel::Sender<i64> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
3
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
1
            }
73
2
        }
74
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<u32>>>::release::<<crossbeam_channel::channel::Sender<u32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
6
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
6
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
2
            }
73
4
        }
74
6
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<u32>>>::release::<<crossbeam_channel::channel::Sender<u32> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
200k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
200k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
2
            }
73
200k
        }
74
200k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::string::String>>>::release::<<crossbeam_channel::channel::Sender<alloc::string::String> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
3
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
1
            }
73
2
        }
74
3
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<u8>>>::release::<<crossbeam_channel::channel::Sender<u8> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<[u8; 0]>>>::release::<<crossbeam_channel::channel::Sender<[u8; 0]> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<u8>>>::release::<<crossbeam_channel::channel::Sender<u8> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
10.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
10.0k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
4
            disconnect(&self.counter().chan);
69
4
70
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
4
            }
73
10.0k
        }
74
10.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<[u8; 0]>>>::release::<<crossbeam_channel::channel::Sender<[u8; 0]> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<golang::zerosize::zero_size_struct::ZeroSize>>>::release::<<crossbeam_channel::channel::Sender<golang::zerosize::zero_size_struct::ZeroSize> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<[u8; 0]>>>::release::<<crossbeam_channel::channel::Sender<[u8; 0]> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
1
            }
73
0
        }
74
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<golang::zerosize::zero_size_struct::ZeroSize>>>::release::<<crossbeam_channel::channel::Sender<golang::zerosize::zero_size_struct::ZeroSize> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<u8>>>::release::<<crossbeam_channel::channel::Sender<u8> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
20.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
20.0k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
2
            }
73
20.0k
        }
74
20.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<bool>>>::release::<<crossbeam_channel::channel::Sender<bool> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<golang::zerosize::zero_size_struct::ZeroSize>>>::release::<<crossbeam_channel::channel::Sender<golang::zerosize::zero_size_struct::ZeroSize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1
            disconnect(&self.counter().chan);
69
1
70
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
1
            }
73
0
        }
74
1
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
0
            disconnect(&self.counter().chan);
69
0
70
0
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
0
            }
73
1.00k
        }
74
1.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<bool>>>::release::<<crossbeam_channel::channel::Sender<bool> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
633
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
633
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
306
            disconnect(&self.counter().chan);
69
306
70
306
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
0
                drop(Box::from_raw(self.counter));
72
306
            }
73
327
        }
74
633
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
2
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
2
                drop(Box::from_raw(self.counter));
72
2
            }
0
73
0
        }
74
2
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
7
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
7
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
7
            disconnect(&self.counter().chan);
69
7
70
7
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
7
                drop(Box::from_raw(self.counter));
72
7
            }
0
73
0
        }
74
7
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
2.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
2.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2.00k
            disconnect(&self.counter().chan);
69
2.00k
70
2.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
1.38k
                drop(Box::from_raw(self.counter));
72
1.38k
            }
620
73
0
        }
74
2.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
4
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
4
            disconnect(&self.counter().chan);
69
4
70
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
4
                drop(Box::from_raw(self.counter));
72
4
            }
0
73
0
        }
74
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
57
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
57
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
57
            disconnect(&self.counter().chan);
69
57
70
57
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
52
                drop(Box::from_raw(self.counter));
72
52
            }
5
73
0
        }
74
57
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
16
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
16
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
13
            disconnect(&self.counter().chan);
69
13
70
13
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
10
                drop(Box::from_raw(self.counter));
72
10
            }
3
73
3
        }
74
16
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
34
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
34
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
33
            disconnect(&self.counter().chan);
69
33
70
33
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
20
                drop(Box::from_raw(self.counter));
72
20
            }
13
73
1
        }
74
34
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
1.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
1.00k
            disconnect(&self.counter().chan);
69
1.00k
70
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
1
                drop(Box::from_raw(self.counter));
72
1.00k
            }
73
0
        }
74
1.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
6
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
6
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
6
            disconnect(&self.counter().chan);
69
6
70
6
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
4
                drop(Box::from_raw(self.counter));
72
4
            }
2
73
0
        }
74
6
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
3
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
3
            disconnect(&self.counter().chan);
69
3
70
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
3
                drop(Box::from_raw(self.counter));
72
3
            }
0
73
0
        }
74
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
32
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
32
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
32
            disconnect(&self.counter().chan);
69
32
70
32
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
11
                drop(Box::from_raw(self.counter));
72
21
            }
73
0
        }
74
32
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
2
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
2
                drop(Box::from_raw(self.counter));
72
2
            }
0
73
0
        }
74
2
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
7
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
7
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
7
            disconnect(&self.counter().chan);
69
7
70
7
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
7
                drop(Box::from_raw(self.counter));
72
7
            }
0
73
0
        }
74
7
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
12
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
12
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
9
            disconnect(&self.counter().chan);
69
9
70
9
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
6
                drop(Box::from_raw(self.counter));
72
6
            }
3
73
3
        }
74
12
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
4
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
4
            disconnect(&self.counter().chan);
69
4
70
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
4
                drop(Box::from_raw(self.counter));
72
4
            }
0
73
0
        }
74
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Sender<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
20
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
20
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
19
            disconnect(&self.counter().chan);
69
19
70
19
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
13
                drop(Box::from_raw(self.counter));
72
13
            }
6
73
1
        }
74
20
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Sender<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
2
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
2
            disconnect(&self.counter().chan);
69
2
70
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
2
                drop(Box::from_raw(self.counter));
72
2
            }
0
73
0
        }
74
2
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
66
3.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
3.00k
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
3.00k
            disconnect(&self.counter().chan);
69
3.00k
70
3.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
971
                drop(Box::from_raw(self.counter));
72
2.03k
            }
73
0
        }
74
3.00k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
66
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
4
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
4
            disconnect(&self.counter().chan);
69
4
70
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
4
                drop(Box::from_raw(self.counter));
72
4
            }
0
73
0
        }
74
4
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Sender<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
66
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
67
3
        if self.counter().senders.fetch_sub(1, Ordering::AcqRel) == 1 {
68
3
            disconnect(&self.counter().chan);
69
3
70
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
71
3
                drop(Box::from_raw(self.counter));
72
3
            }
0
73
0
        }
74
3
    }
Unexecuted instantiation: <crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Sender<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
75
}
76
77
impl<C> ops::Deref for Sender<C> {
78
    type Target = C;
79
80
26.7M
    fn deref(&self) -> &C {
81
26.7M
        &self.counter().chan
82
26.7M
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
1.00k
    fn deref(&self) -> &C {
81
1.00k
        &self.counter().chan
82
1.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<zero::drops::DropCounter>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
155k
    fn deref(&self) -> &C {
81
155k
        &self.counter().chan
82
155k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
248k
    fn deref(&self) -> &C {
81
248k
        &self.counter().chan
82
248k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
10.0k
    fn deref(&self) -> &C {
81
10.0k
        &self.counter().chan
82
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
22
    fn deref(&self) -> &C {
81
22
        &self.counter().chan
82
22
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
193k
    fn deref(&self) -> &C {
81
193k
        &self.counter().chan
82
193k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
4.97k
    fn deref(&self) -> &C {
81
4.97k
        &self.counter().chan
82
4.97k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
28.5k
    fn deref(&self) -> &C {
81
28.5k
        &self.counter().chan
82
28.5k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
122k
    fn deref(&self) -> &C {
81
122k
        &self.counter().chan
82
122k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
10.0k
    fn deref(&self) -> &C {
81
10.0k
        &self.counter().chan
82
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
396k
    fn deref(&self) -> &C {
81
396k
        &self.counter().chan
82
396k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
806k
    fn deref(&self) -> &C {
81
806k
        &self.counter().chan
82
806k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
78.0k
    fn deref(&self) -> &C {
81
78.0k
        &self.counter().chan
82
78.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
5.24M
    fn deref(&self) -> &C {
81
5.24M
        &self.counter().chan
82
5.24M
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
10.0k
    fn deref(&self) -> &C {
81
10.0k
        &self.counter().chan
82
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
4.00k
    fn deref(&self) -> &C {
81
4.00k
        &self.counter().chan
82
4.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
397k
    fn deref(&self) -> &C {
81
397k
        &self.counter().chan
82
397k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
101k
    fn deref(&self) -> &C {
81
101k
        &self.counter().chan
82
101k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
10.2k
    fn deref(&self) -> &C {
81
10.2k
        &self.counter().chan
82
10.2k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
202
    fn deref(&self) -> &C {
81
202
        &self.counter().chan
82
202
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
16
    fn deref(&self) -> &C {
81
16
        &self.counter().chan
82
16
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<isize>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
3
    fn deref(&self) -> &C {
81
3
        &self.counter().chan
82
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<i32>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
13
    fn deref(&self) -> &C {
81
13
        &self.counter().chan
82
13
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
34.9k
    fn deref(&self) -> &C {
81
34.9k
        &self.counter().chan
82
34.9k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<isize>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
1
    fn deref(&self) -> &C {
81
1
        &self.counter().chan
82
1
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<i32>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
13
    fn deref(&self) -> &C {
81
13
        &self.counter().chan
82
13
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<i32>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
1
    fn deref(&self) -> &C {
81
1
        &self.counter().chan
82
1
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
21.5k
    fn deref(&self) -> &C {
81
21.5k
        &self.counter().chan
82
21.5k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
105
    fn deref(&self) -> &C {
81
105
        &self.counter().chan
82
105
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
109k
    fn deref(&self) -> &C {
81
109k
        &self.counter().chan
82
109k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
128k
    fn deref(&self) -> &C {
81
128k
        &self.counter().chan
82
128k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<array::drops::DropCounter>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
493k
    fn deref(&self) -> &C {
81
493k
        &self.counter().chan
82
493k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
1.00k
    fn deref(&self) -> &C {
81
1.00k
        &self.counter().chan
82
1.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
346k
    fn deref(&self) -> &C {
81
346k
        &self.counter().chan
82
346k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
48
    fn deref(&self) -> &C {
81
48
        &self.counter().chan
82
48
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
16
    fn deref(&self) -> &C {
81
16
        &self.counter().chan
82
16
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
2
    fn deref(&self) -> &C {
81
2
        &self.counter().chan
82
2
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
2
    fn deref(&self) -> &C {
81
2
        &self.counter().chan
82
2
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
284k
    fn deref(&self) -> &C {
81
284k
        &self.counter().chan
82
284k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
112k
    fn deref(&self) -> &C {
81
112k
        &self.counter().chan
82
112k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
128k
    fn deref(&self) -> &C {
81
128k
        &self.counter().chan
82
128k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<list::drops::DropCounter>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
523k
    fn deref(&self) -> &C {
81
523k
        &self.counter().chan
82
523k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
1.00k
    fn deref(&self) -> &C {
81
1.00k
        &self.counter().chan
82
1.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::string::String>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
3
    fn deref(&self) -> &C {
81
3
        &self.counter().chan
82
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
1.00k
    fn deref(&self) -> &C {
81
1.00k
        &self.counter().chan
82
1.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
200k
    fn deref(&self) -> &C {
81
200k
        &self.counter().chan
82
200k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<u32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
6
    fn deref(&self) -> &C {
81
6
        &self.counter().chan
82
6
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::string::String>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
6
    fn deref(&self) -> &C {
81
6
        &self.counter().chan
82
6
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i64>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
3
    fn deref(&self) -> &C {
81
3
        &self.counter().chan
82
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<bool>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
2.00k
    fn deref(&self) -> &C {
81
2.00k
        &self.counter().chan
82
2.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<bool>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
331
    fn deref(&self) -> &C {
81
331
        &self.counter().chan
82
331
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<u32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
13
    fn deref(&self) -> &C {
81
13
        &self.counter().chan
82
13
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
247k
    fn deref(&self) -> &C {
81
247k
        &self.counter().chan
82
247k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<u8>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
21.5k
    fn deref(&self) -> &C {
81
21.5k
        &self.counter().chan
82
21.5k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i64>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
7
    fn deref(&self) -> &C {
81
7
        &self.counter().chan
82
7
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
734k
    fn deref(&self) -> &C {
81
734k
        &self.counter().chan
82
734k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<u8>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
20.0k
    fn deref(&self) -> &C {
81
20.0k
        &self.counter().chan
82
20.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
11
    fn deref(&self) -> &C {
81
11
        &self.counter().chan
82
11
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
10.0k
    fn deref(&self) -> &C {
81
10.0k
        &self.counter().chan
82
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
13.0M
    fn deref(&self) -> &C {
81
13.0M
        &self.counter().chan
82
13.0M
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
396k
    fn deref(&self) -> &C {
81
396k
        &self.counter().chan
82
396k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
86.5k
    fn deref(&self) -> &C {
81
86.5k
        &self.counter().chan
82
86.5k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
10.0k
    fn deref(&self) -> &C {
81
10.0k
        &self.counter().chan
82
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
807k
    fn deref(&self) -> &C {
81
807k
        &self.counter().chan
82
807k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
396k
    fn deref(&self) -> &C {
81
396k
        &self.counter().chan
82
396k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
46.1k
    fn deref(&self) -> &C {
81
46.1k
        &self.counter().chan
82
46.1k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
3.47k
    fn deref(&self) -> &C {
81
3.47k
        &self.counter().chan
82
3.47k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
96.3k
    fn deref(&self) -> &C {
81
96.3k
        &self.counter().chan
82
96.3k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
4.00k
    fn deref(&self) -> &C {
81
4.00k
        &self.counter().chan
82
4.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
212k
    fn deref(&self) -> &C {
81
212k
        &self.counter().chan
82
212k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
23
    fn deref(&self) -> &C {
81
23
        &self.counter().chan
82
23
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
56
    fn deref(&self) -> &C {
81
56
        &self.counter().chan
82
56
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
138k
    fn deref(&self) -> &C {
81
138k
        &self.counter().chan
82
138k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
6.00k
    fn deref(&self) -> &C {
81
6.00k
        &self.counter().chan
82
6.00k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
10.0k
    fn deref(&self) -> &C {
81
10.0k
        &self.counter().chan
82
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
193k
    fn deref(&self) -> &C {
81
193k
        &self.counter().chan
82
193k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
10.0k
    fn deref(&self) -> &C {
81
10.0k
        &self.counter().chan
82
10.0k
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
80
86.4k
    fn deref(&self) -> &C {
81
86.4k
        &self.counter().chan
82
86.4k
    }
83
}
84
85
impl<C> PartialEq for Sender<C> {
86
9
    fn eq(&self, other: &Sender<C>) -> bool {
87
9
        self.counter == other.counter
88
9
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::list::Channel<usize>> as core::cmp::PartialEq>::eq
Line
Count
Source
86
3
    fn eq(&self, other: &Sender<C>) -> bool {
87
3
        self.counter == other.counter
88
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::zero::Channel<usize>> as core::cmp::PartialEq>::eq
Line
Count
Source
86
3
    fn eq(&self, other: &Sender<C>) -> bool {
87
3
        self.counter == other.counter
88
3
    }
<crossbeam_channel::counter::Sender<crossbeam_channel::flavors::array::Channel<usize>> as core::cmp::PartialEq>::eq
Line
Count
Source
86
3
    fn eq(&self, other: &Sender<C>) -> bool {
87
3
        self.counter == other.counter
88
3
    }
89
}
90
91
/// The receiving side.
92
pub(crate) struct Receiver<C> {
93
    counter: *mut Counter<C>,
94
}
95
96
impl<C> Receiver<C> {
97
    /// Returns the internal `Counter`.
98
97.0M
    fn counter(&self) -> &Counter<C> {
99
97.0M
        unsafe { &*self.counter }
100
97.0M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
98
97.0k
    fn counter(&self) -> &Counter<C> {
99
97.0k
        unsafe { &*self.counter }
100
97.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
98
47
    fn counter(&self) -> &Counter<C> {
99
47
        unsafe { &*self.counter }
100
47
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
98
4.00k
    fn counter(&self) -> &Counter<C> {
99
4.00k
        unsafe { &*self.counter }
100
4.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<zero::drops::DropCounter>>>::counter
Line
Count
Source
98
155k
    fn counter(&self) -> &Counter<C> {
99
155k
        unsafe { &*self.counter }
100
155k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
98
250k
    fn counter(&self) -> &Counter<C> {
99
250k
        unsafe { &*self.counter }
100
250k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
98
40.0k
    fn counter(&self) -> &Counter<C> {
99
40.0k
        unsafe { &*self.counter }
100
40.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
98
15.5k
    fn counter(&self) -> &Counter<C> {
99
15.5k
        unsafe { &*self.counter }
100
15.5k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
98
94.8k
    fn counter(&self) -> &Counter<C> {
99
94.8k
        unsafe { &*self.counter }
100
94.8k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
98
26.6k
    fn counter(&self) -> &Counter<C> {
99
26.6k
        unsafe { &*self.counter }
100
26.6k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
98
26.5k
    fn counter(&self) -> &Counter<C> {
99
26.5k
        unsafe { &*self.counter }
100
26.5k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
98
12.8k
    fn counter(&self) -> &Counter<C> {
99
12.8k
        unsafe { &*self.counter }
100
12.8k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
98
878k
    fn counter(&self) -> &Counter<C> {
99
878k
        unsafe { &*self.counter }
100
878k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
98
870k
    fn counter(&self) -> &Counter<C> {
99
870k
        unsafe { &*self.counter }
100
870k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
98
15.8M
    fn counter(&self) -> &Counter<C> {
99
15.8M
        unsafe { &*self.counter }
100
15.8M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
98
64.8k
    fn counter(&self) -> &Counter<C> {
99
64.8k
        unsafe { &*self.counter }
100
64.8k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
98
2.53M
    fn counter(&self) -> &Counter<C> {
99
2.53M
        unsafe { &*self.counter }
100
2.53M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
98
7.13k
    fn counter(&self) -> &Counter<C> {
99
7.13k
        unsafe { &*self.counter }
100
7.13k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<i32>>>>::counter
Line
Count
Source
98
28
    fn counter(&self) -> &Counter<C> {
99
28
        unsafe { &*self.counter }
100
28
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
98
34.8k
    fn counter(&self) -> &Counter<C> {
99
34.8k
        unsafe { &*self.counter }
100
34.8k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
98
124
    fn counter(&self) -> &Counter<C> {
99
124
        unsafe { &*self.counter }
100
124
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<isize>>>>::counter
Line
Count
Source
98
10
    fn counter(&self) -> &Counter<C> {
99
10
        unsafe { &*self.counter }
100
10
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
98
20.2k
    fn counter(&self) -> &Counter<C> {
99
20.2k
        unsafe { &*self.counter }
100
20.2k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
98
148k
    fn counter(&self) -> &Counter<C> {
99
148k
        unsafe { &*self.counter }
100
148k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
98
10.7k
    fn counter(&self) -> &Counter<C> {
99
10.7k
        unsafe { &*self.counter }
100
10.7k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<i32>>>>::counter
Line
Count
Source
98
28
    fn counter(&self) -> &Counter<C> {
99
28
        unsafe { &*self.counter }
100
28
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<isize>>>>::counter
Line
Count
Source
98
3
    fn counter(&self) -> &Counter<C> {
99
3
        unsafe { &*self.counter }
100
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<i32>>>>::counter
Line
Count
Source
98
4
    fn counter(&self) -> &Counter<C> {
99
4
        unsafe { &*self.counter }
100
4
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
98
52
    fn counter(&self) -> &Counter<C> {
99
52
        unsafe { &*self.counter }
100
52
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
98
278
    fn counter(&self) -> &Counter<C> {
99
278
        unsafe { &*self.counter }
100
278
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
98
139k
    fn counter(&self) -> &Counter<C> {
99
139k
        unsafe { &*self.counter }
100
139k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
98
138k
    fn counter(&self) -> &Counter<C> {
99
138k
        unsafe { &*self.counter }
100
138k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
98
436k
    fn counter(&self) -> &Counter<C> {
99
436k
        unsafe { &*self.counter }
100
436k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<array::drops::DropCounter>>>::counter
Line
Count
Source
98
490k
    fn counter(&self) -> &Counter<C> {
99
490k
        unsafe { &*self.counter }
100
490k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
98
4.00k
    fn counter(&self) -> &Counter<C> {
99
4.00k
        unsafe { &*self.counter }
100
4.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
98
84
    fn counter(&self) -> &Counter<C> {
99
84
        unsafe { &*self.counter }
100
84
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
98
7
    fn counter(&self) -> &Counter<C> {
99
7
        unsafe { &*self.counter }
100
7
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
98
4
    fn counter(&self) -> &Counter<C> {
99
4
        unsafe { &*self.counter }
100
4
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
98
8
    fn counter(&self) -> &Counter<C> {
99
8
        unsafe { &*self.counter }
100
8
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
98
11
    fn counter(&self) -> &Counter<C> {
99
11
        unsafe { &*self.counter }
100
11
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
98
11
    fn counter(&self) -> &Counter<C> {
99
11
        unsafe { &*self.counter }
100
11
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
98
4
    fn counter(&self) -> &Counter<C> {
99
4
        unsafe { &*self.counter }
100
4
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
98
4.00k
    fn counter(&self) -> &Counter<C> {
99
4.00k
        unsafe { &*self.counter }
100
4.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<list::drops::DropCounter>>>::counter
Line
Count
Source
98
471k
    fn counter(&self) -> &Counter<C> {
99
471k
        unsafe { &*self.counter }
100
471k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
98
139k
    fn counter(&self) -> &Counter<C> {
99
139k
        unsafe { &*self.counter }
100
139k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
98
136k
    fn counter(&self) -> &Counter<C> {
99
136k
        unsafe { &*self.counter }
100
136k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
98
372k
    fn counter(&self) -> &Counter<C> {
99
372k
        unsafe { &*self.counter }
100
372k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::counter
Line
Count
Source
98
3
    fn counter(&self) -> &Counter<C> {
99
3
        unsafe { &*self.counter }
100
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i64>>>::counter
Line
Count
Source
98
12
    fn counter(&self) -> &Counter<C> {
99
12
        unsafe { &*self.counter }
100
12
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<u8>>>::counter
Line
Count
Source
98
60.0k
    fn counter(&self) -> &Counter<C> {
99
60.0k
        unsafe { &*self.counter }
100
60.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<bool>>>::counter
Line
Count
Source
98
1.90k
    fn counter(&self) -> &Counter<C> {
99
1.90k
        unsafe { &*self.counter }
100
1.90k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<u32>>>::counter
Line
Count
Source
98
6
    fn counter(&self) -> &Counter<C> {
99
6
        unsafe { &*self.counter }
100
6
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
98
1.30M
    fn counter(&self) -> &Counter<C> {
99
1.30M
        unsafe { &*self.counter }
100
1.30M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<golang::zerosize::zero_size_struct::ZeroSize>>>::counter
Line
Count
Source
98
3
    fn counter(&self) -> &Counter<C> {
99
3
        unsafe { &*self.counter }
100
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<bool>>>::counter
Line
Count
Source
98
6.01k
    fn counter(&self) -> &Counter<C> {
99
6.01k
        unsafe { &*self.counter }
100
6.01k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
98
1.83M
    fn counter(&self) -> &Counter<C> {
99
1.83M
        unsafe { &*self.counter }
100
1.83M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<[u8; 0]>>>::counter
Line
Count
Source
98
3
    fn counter(&self) -> &Counter<C> {
99
3
        unsafe { &*self.counter }
100
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i64>>>::counter
Line
Count
Source
98
15
    fn counter(&self) -> &Counter<C> {
99
15
        unsafe { &*self.counter }
100
15
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::string::String>>>::counter
Line
Count
Source
98
12
    fn counter(&self) -> &Counter<C> {
99
12
        unsafe { &*self.counter }
100
12
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<u32>>>::counter
Line
Count
Source
98
12
    fn counter(&self) -> &Counter<C> {
99
12
        unsafe { &*self.counter }
100
12
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::string::String>>>::counter
Line
Count
Source
98
15
    fn counter(&self) -> &Counter<C> {
99
15
        unsafe { &*self.counter }
100
15
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
98
234k
    fn counter(&self) -> &Counter<C> {
99
234k
        unsafe { &*self.counter }
100
234k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
98
3.00k
    fn counter(&self) -> &Counter<C> {
99
3.00k
        unsafe { &*self.counter }
100
3.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<u8>>>::counter
Line
Count
Source
98
99.7k
    fn counter(&self) -> &Counter<C> {
99
99.7k
        unsafe { &*self.counter }
100
99.7k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
98
841k
    fn counter(&self) -> &Counter<C> {
99
841k
        unsafe { &*self.counter }
100
841k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
98
26.8k
    fn counter(&self) -> &Counter<C> {
99
26.8k
        unsafe { &*self.counter }
100
26.8k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
98
58.1k
    fn counter(&self) -> &Counter<C> {
99
58.1k
        unsafe { &*self.counter }
100
58.1k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
98
8.00k
    fn counter(&self) -> &Counter<C> {
99
8.00k
        unsafe { &*self.counter }
100
8.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
98
4.00k
    fn counter(&self) -> &Counter<C> {
99
4.00k
        unsafe { &*self.counter }
100
4.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
98
35.2M
    fn counter(&self) -> &Counter<C> {
99
35.2M
        unsafe { &*self.counter }
100
35.2M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
98
43.0k
    fn counter(&self) -> &Counter<C> {
99
43.0k
        unsafe { &*self.counter }
100
43.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
98
42.7k
    fn counter(&self) -> &Counter<C> {
99
42.7k
        unsafe { &*self.counter }
100
42.7k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
98
32.2M
    fn counter(&self) -> &Counter<C> {
99
32.2M
        unsafe { &*self.counter }
100
32.2M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::counter
Line
Count
Source
98
845k
    fn counter(&self) -> &Counter<C> {
99
845k
        unsafe { &*self.counter }
100
845k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
98
66.5k
    fn counter(&self) -> &Counter<C> {
99
66.5k
        unsafe { &*self.counter }
100
66.5k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::counter
Line
Count
Source
98
234
    fn counter(&self) -> &Counter<C> {
99
234
        unsafe { &*self.counter }
100
234
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::counter
Line
Count
Source
98
55.3k
    fn counter(&self) -> &Counter<C> {
99
55.3k
        unsafe { &*self.counter }
100
55.3k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::counter
Line
Count
Source
98
26.0k
    fn counter(&self) -> &Counter<C> {
99
26.0k
        unsafe { &*self.counter }
100
26.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::counter
Line
Count
Source
98
111k
    fn counter(&self) -> &Counter<C> {
99
111k
        unsafe { &*self.counter }
100
111k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::counter
Line
Count
Source
98
90.4k
    fn counter(&self) -> &Counter<C> {
99
90.4k
        unsafe { &*self.counter }
100
90.4k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::counter
Line
Count
Source
98
23.6k
    fn counter(&self) -> &Counter<C> {
99
23.6k
        unsafe { &*self.counter }
100
23.6k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::counter
Line
Count
Source
98
25.9k
    fn counter(&self) -> &Counter<C> {
99
25.9k
        unsafe { &*self.counter }
100
25.9k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::counter
Line
Count
Source
98
130k
    fn counter(&self) -> &Counter<C> {
99
130k
        unsafe { &*self.counter }
100
130k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::counter
Line
Count
Source
98
94
    fn counter(&self) -> &Counter<C> {
99
94
        unsafe { &*self.counter }
100
94
    }
101
102
    /// Acquires another receiver reference.
103
1.14M
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
1.14M
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
1.14M
106
1.14M
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
1.14M
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
1.14M
        // just abort when the count becomes very large.
109
1.14M
        if count > isize::MAX as usize {
110
0
            process::abort();
111
1.14M
        }
112
1.14M
113
1.14M
        Receiver {
114
1.14M
            counter: self.counter,
115
1.14M
        }
116
1.14M
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::acquire
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::acquire
Line
Count
Source
103
1
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
1
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
1
106
1
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
1
        // just abort when the count becomes very large.
109
1
        if count > isize::MAX as usize {
110
0
            process::abort();
111
1
        }
112
1
113
1
        Receiver {
114
1
            counter: self.counter,
115
1
        }
116
1
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::acquire
Line
Count
Source
103
1
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
1
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
1
106
1
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
1
        // just abort when the count becomes very large.
109
1
        if count > isize::MAX as usize {
110
0
            process::abort();
111
1
        }
112
1
113
1
        Receiver {
114
1
            counter: self.counter,
115
1
        }
116
1
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::acquire
Line
Count
Source
103
1
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
1
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
1
106
1
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
1
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
1
        // just abort when the count becomes very large.
109
1
        if count > isize::MAX as usize {
110
0
            process::abort();
111
1
        }
112
1
113
1
        Receiver {
114
1
            counter: self.counter,
115
1
        }
116
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::acquire
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<u8>>>::acquire
Line
Count
Source
103
20.0k
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
20.0k
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
20.0k
106
20.0k
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
20.0k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
20.0k
        // just abort when the count becomes very large.
109
20.0k
        if count > isize::MAX as usize {
110
0
            process::abort();
111
20.0k
        }
112
20.0k
113
20.0k
        Receiver {
114
20.0k
            counter: self.counter,
115
20.0k
        }
116
20.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i64>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::acquire
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<bool>>>::acquire
Line
Count
Source
103
2.00k
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
2.00k
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
2.00k
106
2.00k
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
2.00k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
2.00k
        // just abort when the count becomes very large.
109
2.00k
        if count > isize::MAX as usize {
110
0
            process::abort();
111
2.00k
        }
112
2.00k
113
2.00k
        Receiver {
114
2.00k
            counter: self.counter,
115
2.00k
        }
116
2.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<u8>>>::acquire
Line
Count
Source
103
39.6k
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
39.6k
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
39.6k
106
39.6k
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
39.6k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
39.6k
        // just abort when the count becomes very large.
109
39.6k
        if count > isize::MAX as usize {
110
0
            process::abort();
111
39.6k
        }
112
39.6k
113
39.6k
        Receiver {
114
39.6k
            counter: self.counter,
115
39.6k
        }
116
39.6k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i64>>>::acquire
Line
Count
Source
103
3
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
3
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
3
106
3
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
3
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
3
        // just abort when the count becomes very large.
109
3
        if count > isize::MAX as usize {
110
0
            process::abort();
111
3
        }
112
3
113
3
        Receiver {
114
3
            counter: self.counter,
115
3
        }
116
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::acquire
Line
Count
Source
103
637k
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
637k
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
637k
106
637k
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
637k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
637k
        // just abort when the count becomes very large.
109
637k
        if count > isize::MAX as usize {
110
0
            process::abort();
111
637k
        }
112
637k
113
637k
        Receiver {
114
637k
            counter: self.counter,
115
637k
        }
116
637k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i64>>>::acquire
Line
Count
Source
103
4
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
4
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
4
106
4
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
4
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
4
        // just abort when the count becomes very large.
109
4
        if count > isize::MAX as usize {
110
0
            process::abort();
111
4
        }
112
4
113
4
        Receiver {
114
4
            counter: self.counter,
115
4
        }
116
4
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<u32>>>::acquire
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::string::String>>>::acquire
Line
Count
Source
103
4
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
4
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
4
106
4
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
4
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
4
        // just abort when the count becomes very large.
109
4
        if count > isize::MAX as usize {
110
0
            process::abort();
111
4
        }
112
4
113
4
        Receiver {
114
4
            counter: self.counter,
115
4
        }
116
4
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::acquire
Line
Count
Source
103
43.3k
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
43.3k
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
43.3k
106
43.3k
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
43.3k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
43.3k
        // just abort when the count becomes very large.
109
43.3k
        if count > isize::MAX as usize {
110
0
            process::abort();
111
43.3k
        }
112
43.3k
113
43.3k
        Receiver {
114
43.3k
            counter: self.counter,
115
43.3k
        }
116
43.3k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::string::String>>>::acquire
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<bool>>>::acquire
Line
Count
Source
103
329
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
329
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
329
106
329
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
329
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
329
        // just abort when the count becomes very large.
109
329
        if count > isize::MAX as usize {
110
0
            process::abort();
111
329
        }
112
329
113
329
        Receiver {
114
329
            counter: self.counter,
115
329
        }
116
329
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<u32>>>::acquire
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::acquire
Line
Count
Source
103
400k
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
400k
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
400k
106
400k
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
400k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
400k
        // just abort when the count becomes very large.
109
400k
        if count > isize::MAX as usize {
110
0
            process::abort();
111
400k
        }
112
400k
113
400k
        Receiver {
114
400k
            counter: self.counter,
115
400k
        }
116
400k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::acquire
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::string::String>>>::acquire
Line
Count
Source
103
3
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
3
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
3
106
3
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
3
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
3
        // just abort when the count becomes very large.
109
3
        if count > isize::MAX as usize {
110
0
            process::abort();
111
3
        }
112
3
113
3
        Receiver {
114
3
            counter: self.counter,
115
3
        }
116
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<u32>>>::acquire
Line
Count
Source
103
2
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
2
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
2
106
2
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
2
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
2
        // just abort when the count becomes very large.
109
2
        if count > isize::MAX as usize {
110
0
            process::abort();
111
2
        }
112
2
113
2
        Receiver {
114
2
            counter: self.counter,
115
2
        }
116
2
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::acquire
Line
Count
Source
103
1.01k
    pub(crate) fn acquire(&self) -> Receiver<C> {
104
1.01k
        let count = self.counter().receivers.fetch_add(1, Ordering::Relaxed);
105
1.01k
106
1.01k
        // Cloning receivers and calling `mem::forget` on the clones could potentially overflow the
107
1.01k
        // counter. It's very difficult to recover sensibly from such degenerate scenarios so we
108
1.01k
        // just abort when the count becomes very large.
109
1.01k
        if count > isize::MAX as usize {
110
0
            process::abort();
111
1.01k
        }
112
1.01k
113
1.01k
        Receiver {
114
1.01k
            counter: self.counter,
115
1.01k
        }
116
1.01k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<u8>>>::acquire
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<bool>>>::acquire
117
118
    /// Releases the receiver reference.
119
    ///
120
    /// Function `disconnect` will be called if this is the last receiver reference.
121
1.19M
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1.19M
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
49.6k
            disconnect(&self.counter().chan);
124
49.6k
125
49.6k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
15.0k
                drop(Box::from_raw(self.counter));
127
34.5k
            }
128
1.14M
        }
129
1.19M
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
5
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
5
            disconnect(&self.counter().chan);
124
5
125
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
4
            }
128
0
        }
129
5
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<zero::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Receiver<zero::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
10.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
10.0k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
10.0k
            disconnect(&self.counter().chan);
124
10.0k
125
10.0k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
10.0k
            }
128
0
        }
129
10.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1.00k
            disconnect(&self.counter().chan);
124
1.00k
125
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
509
                drop(Box::from_raw(self.counter));
127
509
            }
492
128
0
        }
129
1.00k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
8
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
8
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
8
            disconnect(&self.counter().chan);
124
8
125
8
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
6
            }
128
0
        }
129
8
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
8
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
8
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
8
            disconnect(&self.counter().chan);
124
8
125
8
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
4
                drop(Box::from_raw(self.counter));
127
4
            }
128
0
        }
129
8
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<zero::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Receiver<zero::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<zero::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Receiver<zero::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
100
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
100
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
100
            disconnect(&self.counter().chan);
124
100
125
100
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
100
                drop(Box::from_raw(self.counter));
127
100
            }
0
128
0
        }
129
100
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
23
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
23
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
23
            disconnect(&self.counter().chan);
124
23
125
23
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
6
                drop(Box::from_raw(self.counter));
127
17
            }
128
0
        }
129
23
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
2
            }
128
0
        }
129
2
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1.00k
            disconnect(&self.counter().chan);
124
1.00k
125
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1.00k
                drop(Box::from_raw(self.counter));
127
1.00k
            }
1
128
0
        }
129
1.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
29
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
29
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
29
            disconnect(&self.counter().chan);
124
29
125
29
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
20
                drop(Box::from_raw(self.counter));
127
20
            }
9
128
0
        }
129
29
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
4
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
4
            disconnect(&self.counter().chan);
124
4
125
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
4
            }
128
0
        }
129
4
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
6
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
6
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
6
            disconnect(&self.counter().chan);
124
6
125
6
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
6
            }
128
0
        }
129
6
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
9
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
9
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
9
            disconnect(&self.counter().chan);
124
9
125
9
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
3
                drop(Box::from_raw(self.counter));
127
6
            }
128
0
        }
129
9
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
10
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
10
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
10
            disconnect(&self.counter().chan);
124
10
125
10
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
4
                drop(Box::from_raw(self.counter));
127
6
            }
128
0
        }
129
10
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
2.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2.00k
            disconnect(&self.counter().chan);
124
2.00k
125
2.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1.65k
                drop(Box::from_raw(self.counter));
127
1.65k
            }
352
128
0
        }
129
2.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
47
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
47
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
47
            disconnect(&self.counter().chan);
124
47
125
47
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
47
            }
128
0
        }
129
47
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
3
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
3
            disconnect(&self.counter().chan);
124
3
125
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
3
            }
128
0
        }
129
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
12
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
12
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
12
            disconnect(&self.counter().chan);
124
12
125
12
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
10
            }
128
0
        }
129
12
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<i32>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<i32>> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
5
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
5
            disconnect(&self.counter().chan);
124
5
125
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
3
                drop(Box::from_raw(self.counter));
127
3
            }
2
128
0
        }
129
5
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<isize>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<isize>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
1
            }
128
0
        }
129
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<isize>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<isize>> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
32
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
32
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
32
            disconnect(&self.counter().chan);
124
32
125
32
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
19
                drop(Box::from_raw(self.counter));
127
19
            }
13
128
0
        }
129
32
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<isize>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<isize>> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
3
            disconnect(&self.counter().chan);
124
3
125
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
2
            }
128
18.4E
        }
129
2
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
2
            }
0
128
0
        }
129
2
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
203
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
203
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
203
            disconnect(&self.counter().chan);
124
203
125
203
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
101
                drop(Box::from_raw(self.counter));
127
102
            }
128
0
        }
129
203
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
59
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
59
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
59
            disconnect(&self.counter().chan);
124
59
125
59
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
31
                drop(Box::from_raw(self.counter));
127
31
            }
28
128
0
        }
129
59
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<i32>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<i32>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
1
            }
128
0
        }
129
1
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
35
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
35
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
35
            disconnect(&self.counter().chan);
124
35
125
35
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
13
                drop(Box::from_raw(self.counter));
127
21
            }
128
0
        }
129
34
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
6
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
6
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
6
            disconnect(&self.counter().chan);
124
6
125
6
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
4
                drop(Box::from_raw(self.counter));
127
4
            }
2
128
0
        }
129
6
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<i32>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<i32>> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
5
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
5
            disconnect(&self.counter().chan);
124
5
125
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
3
            }
128
0
        }
129
5
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<array::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Receiver<array::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
100
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
100
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
100
            disconnect(&self.counter().chan);
124
100
125
100
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
100
                drop(Box::from_raw(self.counter));
127
100
            }
0
128
0
        }
129
100
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
5
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
5
            disconnect(&self.counter().chan);
124
5
125
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
5
            }
128
0
        }
129
5
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<array::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Receiver<array::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1.00k
            disconnect(&self.counter().chan);
124
1.00k
125
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
394
                drop(Box::from_raw(self.counter));
127
607
            }
128
0
        }
129
1.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
10.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
10.0k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
10.0k
            disconnect(&self.counter().chan);
124
10.0k
125
10.0k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
4
                drop(Box::from_raw(self.counter));
127
10.0k
            }
128
0
        }
129
10.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
18
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
18
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
18
            disconnect(&self.counter().chan);
124
18
125
18
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
16
            }
128
0
        }
129
18
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<array::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Receiver<array::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
1
            }
0
128
0
        }
129
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
7
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
7
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
7
            disconnect(&self.counter().chan);
124
7
125
7
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
6
                drop(Box::from_raw(self.counter));
127
6
            }
1
128
0
        }
129
7
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
1
            }
128
0
        }
129
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
4
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
3
            disconnect(&self.counter().chan);
124
3
125
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
3
            }
128
1
        }
129
4
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
3
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
2
            }
128
1
        }
129
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
4
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
3
            disconnect(&self.counter().chan);
124
3
125
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
3
            }
128
1
        }
129
4
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
1
            }
128
0
        }
129
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
5
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
5
            disconnect(&self.counter().chan);
124
5
125
5
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
4
            }
128
0
        }
129
5
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
10.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
10.0k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
10.0k
            disconnect(&self.counter().chan);
124
10.0k
125
10.0k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
4
                drop(Box::from_raw(self.counter));
127
10.0k
            }
128
0
        }
129
10.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1.00k
            disconnect(&self.counter().chan);
124
1.00k
125
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
718
                drop(Box::from_raw(self.counter));
127
718
            }
283
128
0
        }
129
1.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<list::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Receiver<list::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
100
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
100
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
100
            disconnect(&self.counter().chan);
124
100
125
100
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
100
                drop(Box::from_raw(self.counter));
127
100
            }
0
128
0
        }
129
100
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
8
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
8
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
8
            disconnect(&self.counter().chan);
124
8
125
8
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
6
            }
128
0
        }
129
8
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<list::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Receiver<list::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<list::drops::DropCounter>>>::release::<<crossbeam_channel::channel::Receiver<list::drops::DropCounter> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<u32>>>::release::<<crossbeam_channel::channel::Receiver<u32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
4
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
2
            }
0
128
2
        }
129
4
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any>> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i64>>>::release::<<crossbeam_channel::channel::Receiver<i64> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
4
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
1
            }
0
128
3
        }
129
4
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<u8>>>::release::<<crossbeam_channel::channel::Receiver<u8> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<u32>>>::release::<<crossbeam_channel::channel::Receiver<u32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
2
            }
0
128
0
        }
129
2
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::string::String>>>::release::<<crossbeam_channel::channel::Receiver<alloc::string::String> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
4
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
1
            }
0
128
3
        }
129
4
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::string::String>>>::release::<<crossbeam_channel::channel::Receiver<alloc::string::String> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
5
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
1
            }
0
128
4
        }
129
5
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
44.3k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
44.3k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1.13k
            disconnect(&self.counter().chan);
124
1.13k
125
1.13k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1.13k
                drop(Box::from_raw(self.counter));
127
1.13k
            }
0
128
43.2k
        }
129
44.3k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<[u8; 0]>>>::release::<<crossbeam_channel::channel::Receiver<[u8; 0]> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<golang::zerosize::zero_size_struct::ZeroSize>>>::release::<<crossbeam_channel::channel::Receiver<golang::zerosize::zero_size_struct::ZeroSize> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<[u8; 0]>>>::release::<<crossbeam_channel::channel::Receiver<[u8; 0]> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
1
            }
0
128
0
        }
129
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<bool>>>::release::<<crossbeam_channel::channel::Receiver<bool> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<golang::zerosize::zero_size_struct::ZeroSize>>>::release::<<crossbeam_channel::channel::Receiver<golang::zerosize::zero_size_struct::ZeroSize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
1
            }
0
128
0
        }
129
1
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i64>>>::release::<<crossbeam_channel::channel::Receiver<i64> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
5
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
5
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1
                drop(Box::from_raw(self.counter));
127
1
            }
0
128
4
        }
129
5
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any>> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<u8>>>::release::<<crossbeam_channel::channel::Receiver<u8> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
20.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
20.0k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
2
            }
0
128
20.0k
        }
129
20.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i64>>>::release::<<crossbeam_channel::channel::Receiver<i64> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<u8>>>::release::<<crossbeam_channel::channel::Receiver<u8> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
40.0k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
40.0k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
4
            disconnect(&self.counter().chan);
124
4
125
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
4
                drop(Box::from_raw(self.counter));
127
4
            }
0
128
39.9k
        }
129
40.0k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<golang::zerosize::zero_size_struct::ZeroSize>>>::release::<<crossbeam_channel::channel::Receiver<golang::zerosize::zero_size_struct::ZeroSize> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
400k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
400k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
2
            }
0
128
400k
        }
129
400k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::string::String>>>::release::<<crossbeam_channel::channel::Receiver<alloc::string::String> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<[u8; 0]>>>::release::<<crossbeam_channel::channel::Receiver<[u8; 0]> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
1
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1
            disconnect(&self.counter().chan);
124
1
125
1
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
1
            }
128
0
        }
129
1
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<bool>>>::release::<<crossbeam_channel::channel::Receiver<bool> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
2.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
3
            disconnect(&self.counter().chan);
124
3
125
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
3
                drop(Box::from_raw(self.counter));
127
3
            }
0
128
2.00k
        }
129
2.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<bool>>>::release::<<crossbeam_channel::channel::Receiver<bool> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
635
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
635
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
306
            disconnect(&self.counter().chan);
124
306
125
306
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
306
                drop(Box::from_raw(self.counter));
127
306
            }
0
128
329
        }
129
635
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<u32>>>::release::<<crossbeam_channel::channel::Receiver<u32> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
641k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
641k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
5.11k
            disconnect(&self.counter().chan);
124
5.11k
125
5.11k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
5.11k
                drop(Box::from_raw(self.counter));
127
5.11k
            }
0
128
636k
        }
129
641k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
0
            disconnect(&self.counter().chan);
124
0
125
0
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
0
            }
128
1.00k
        }
129
1.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
3
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
3
            disconnect(&self.counter().chan);
124
3
125
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
3
            }
128
0
        }
129
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
33
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
33
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
33
            disconnect(&self.counter().chan);
124
33
125
33
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
13
                drop(Box::from_raw(self.counter));
127
20
            }
128
0
        }
129
33
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
32
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
32
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
32
            disconnect(&self.counter().chan);
124
32
125
32
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
21
                drop(Box::from_raw(self.counter));
127
21
            }
11
128
0
        }
129
32
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
2.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2.00k
            disconnect(&self.counter().chan);
124
2.00k
125
2.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
620
                drop(Box::from_raw(self.counter));
127
1.38k
            }
128
0
        }
129
2.00k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
13
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
13
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
13
            disconnect(&self.counter().chan);
124
13
125
13
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
3
                drop(Box::from_raw(self.counter));
127
10
            }
128
0
        }
129
13
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
2
            }
128
0
        }
129
2
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
4
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
4
            disconnect(&self.counter().chan);
124
4
125
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
4
            }
128
0
        }
129
4
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
6
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
6
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
6
            disconnect(&self.counter().chan);
124
6
125
6
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2
                drop(Box::from_raw(self.counter));
127
4
            }
128
0
        }
129
6
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
57
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
57
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
57
            disconnect(&self.counter().chan);
124
57
125
57
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
5
                drop(Box::from_raw(self.counter));
127
52
            }
128
0
        }
129
57
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
7
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
7
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
7
            disconnect(&self.counter().chan);
124
7
125
7
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
7
            }
128
0
        }
129
7
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
1.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
1.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
1.00k
            disconnect(&self.counter().chan);
124
1.00k
125
1.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
1.00k
                drop(Box::from_raw(self.counter));
127
1.00k
            }
1
128
0
        }
129
1.00k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
3.00k
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
3.00k
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
3.00k
            disconnect(&self.counter().chan);
124
3.00k
125
3.00k
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
2.03k
                drop(Box::from_raw(self.counter));
127
2.03k
            }
971
128
0
        }
129
3.00k
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#2}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
4
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
4
            disconnect(&self.counter().chan);
124
4
125
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
4
            }
128
0
        }
129
4
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#0}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<std::time::Instant>>>::release::<<crossbeam_channel::channel::Receiver<std::time::Instant> as core::ops::drop::Drop>::drop::{closure#1}>
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>>>::release::<<crossbeam_channel::channel::Receiver<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>> as core::ops::drop::Drop>::drop::{closure#1}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
2
            }
128
0
        }
129
2
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>>>::release::<<crossbeam_channel::channel::Receiver<usize> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
3
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
3
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
3
            disconnect(&self.counter().chan);
124
3
125
3
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
3
            }
128
0
        }
129
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
2
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
2
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
2
            disconnect(&self.counter().chan);
124
2
125
2
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
2
            }
128
0
        }
129
2
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
19
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
19
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
19
            disconnect(&self.counter().chan);
124
19
125
19
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
6
                drop(Box::from_raw(self.counter));
127
13
            }
128
0
        }
129
19
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#2}>
Line
Count
Source
121
7
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
7
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
7
            disconnect(&self.counter().chan);
124
7
125
7
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
7
            }
128
0
        }
129
7
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#1}>
Line
Count
Source
121
9
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
9
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
9
            disconnect(&self.counter().chan);
124
9
125
9
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
3
                drop(Box::from_raw(self.counter));
127
6
            }
128
0
        }
129
9
    }
Unexecuted instantiation: <crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>>>::release::<<crossbeam_channel::channel::Receiver<i32> as core::ops::drop::Drop>::drop::{closure#0}>
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>>>::release::<<crossbeam_channel::channel::Receiver<()> as core::ops::drop::Drop>::drop::{closure#0}>
Line
Count
Source
121
4
    pub(crate) unsafe fn release<F: FnOnce(&C) -> bool>(&self, disconnect: F) {
122
4
        if self.counter().receivers.fetch_sub(1, Ordering::AcqRel) == 1 {
123
4
            disconnect(&self.counter().chan);
124
4
125
4
            if self.counter().destroy.swap(true, Ordering::AcqRel) {
126
0
                drop(Box::from_raw(self.counter));
127
4
            }
128
0
        }
129
4
    }
130
}
131
132
impl<C> ops::Deref for Receiver<C> {
133
    type Target = C;
134
135
94.7M
    fn deref(&self) -> &C {
136
94.7M
        &self.counter().chan
137
94.7M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<zero::drops::DropCounter>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
155k
    fn deref(&self) -> &C {
136
155k
        &self.counter().chan
137
155k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
250k
    fn deref(&self) -> &C {
136
250k
        &self.counter().chan
137
250k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
10.0k
    fn deref(&self) -> &C {
136
10.0k
        &self.counter().chan
137
10.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
97.0k
    fn deref(&self) -> &C {
136
97.0k
        &self.counter().chan
137
97.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
23
    fn deref(&self) -> &C {
136
23
        &self.counter().chan
137
23
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
1.00k
    fn deref(&self) -> &C {
136
1.00k
        &self.counter().chan
137
1.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
4.12k
    fn deref(&self) -> &C {
136
4.12k
        &self.counter().chan
137
4.12k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
15.4k
    fn deref(&self) -> &C {
136
15.4k
        &self.counter().chan
137
15.4k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
94.9k
    fn deref(&self) -> &C {
136
94.9k
        &self.counter().chan
137
94.9k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
26.6k
    fn deref(&self) -> &C {
136
26.6k
        &self.counter().chan
137
26.6k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
26.5k
    fn deref(&self) -> &C {
136
26.5k
        &self.counter().chan
137
26.5k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
6.86k
    fn deref(&self) -> &C {
136
6.86k
        &self.counter().chan
137
6.86k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
879k
    fn deref(&self) -> &C {
136
879k
        &self.counter().chan
137
879k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
871k
    fn deref(&self) -> &C {
136
871k
        &self.counter().chan
137
871k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
15.9M
    fn deref(&self) -> &C {
136
15.9M
        &self.counter().chan
137
15.9M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
64.9k
    fn deref(&self) -> &C {
136
64.9k
        &self.counter().chan
137
64.9k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
2.53M
    fn deref(&self) -> &C {
136
2.53M
        &self.counter().chan
137
2.53M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<i32>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
13
    fn deref(&self) -> &C {
136
13
        &self.counter().chan
137
13
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<i32>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
13
    fn deref(&self) -> &C {
136
13
        &self.counter().chan
137
13
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
34.8k
    fn deref(&self) -> &C {
136
34.8k
        &self.counter().chan
137
34.8k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<i32>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
1
    fn deref(&self) -> &C {
136
1
        &self.counter().chan
137
1
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
20.1k
    fn deref(&self) -> &C {
136
20.1k
        &self.counter().chan
137
20.1k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
148k
    fn deref(&self) -> &C {
136
148k
        &self.counter().chan
137
148k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
10.1k
    fn deref(&self) -> &C {
136
10.1k
        &self.counter().chan
137
10.1k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
272
    fn deref(&self) -> &C {
136
272
        &self.counter().chan
137
272
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
106
    fn deref(&self) -> &C {
136
106
        &self.counter().chan
137
106
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<isize>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
1
    fn deref(&self) -> &C {
136
1
        &self.counter().chan
137
1
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
16
    fn deref(&self) -> &C {
136
16
        &self.counter().chan
137
16
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
109k
    fn deref(&self) -> &C {
136
109k
        &self.counter().chan
137
109k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
138k
    fn deref(&self) -> &C {
136
138k
        &self.counter().chan
137
138k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
439k
    fn deref(&self) -> &C {
136
439k
        &self.counter().chan
137
439k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<array::drops::DropCounter>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
490k
    fn deref(&self) -> &C {
136
490k
        &self.counter().chan
137
490k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
1.00k
    fn deref(&self) -> &C {
136
1.00k
        &self.counter().chan
137
1.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
4
    fn deref(&self) -> &C {
136
4
        &self.counter().chan
137
4
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
64
    fn deref(&self) -> &C {
136
64
        &self.counter().chan
137
64
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
1
    fn deref(&self) -> &C {
136
1
        &self.counter().chan
137
1
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
1
    fn deref(&self) -> &C {
136
1
        &self.counter().chan
137
1
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
377k
    fn deref(&self) -> &C {
136
377k
        &self.counter().chan
137
377k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
1.00k
    fn deref(&self) -> &C {
136
1.00k
        &self.counter().chan
137
1.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<list::drops::DropCounter>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
471k
    fn deref(&self) -> &C {
136
471k
        &self.counter().chan
137
471k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
109k
    fn deref(&self) -> &C {
136
109k
        &self.counter().chan
137
109k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
136k
    fn deref(&self) -> &C {
136
136k
        &self.counter().chan
137
136k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i64>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
3
    fn deref(&self) -> &C {
136
3
        &self.counter().chan
137
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<u8>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
20.0k
    fn deref(&self) -> &C {
136
20.0k
        &self.counter().chan
137
20.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<bool>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
2.00k
    fn deref(&self) -> &C {
136
2.00k
        &self.counter().chan
137
2.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<bool>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
329
    fn deref(&self) -> &C {
136
329
        &self.counter().chan
137
329
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
500k
    fn deref(&self) -> &C {
136
500k
        &self.counter().chan
137
500k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::string::String>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
3
    fn deref(&self) -> &C {
136
3
        &self.counter().chan
137
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<u32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
2
    fn deref(&self) -> &C {
136
2
        &self.counter().chan
137
2
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
1.01k
    fn deref(&self) -> &C {
136
1.01k
        &self.counter().chan
137
1.01k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
682k
    fn deref(&self) -> &C {
136
682k
        &self.counter().chan
137
682k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i64>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
4
    fn deref(&self) -> &C {
136
4
        &self.counter().chan
137
4
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::string::String>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
4
    fn deref(&self) -> &C {
136
4
        &self.counter().chan
137
4
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
150k
    fn deref(&self) -> &C {
136
150k
        &self.counter().chan
137
150k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<u8>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
22.8k
    fn deref(&self) -> &C {
136
22.8k
        &self.counter().chan
137
22.8k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
32.2M
    fn deref(&self) -> &C {
136
32.2M
        &self.counter().chan
137
32.2M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
848k
    fn deref(&self) -> &C {
136
848k
        &self.counter().chan
137
848k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
66.5k
    fn deref(&self) -> &C {
136
66.5k
        &self.counter().chan
137
66.5k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
842k
    fn deref(&self) -> &C {
136
842k
        &self.counter().chan
137
842k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
26.8k
    fn deref(&self) -> &C {
136
26.8k
        &self.counter().chan
137
26.8k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
58.1k
    fn deref(&self) -> &C {
136
58.1k
        &self.counter().chan
137
58.1k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
2.00k
    fn deref(&self) -> &C {
136
2.00k
        &self.counter().chan
137
2.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
1.00k
    fn deref(&self) -> &C {
136
1.00k
        &self.counter().chan
137
1.00k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
35.2M
    fn deref(&self) -> &C {
136
35.2M
        &self.counter().chan
137
35.2M
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
43.0k
    fn deref(&self) -> &C {
136
43.0k
        &self.counter().chan
137
43.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
42.7k
    fn deref(&self) -> &C {
136
42.7k
        &self.counter().chan
137
42.7k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
130k
    fn deref(&self) -> &C {
136
130k
        &self.counter().chan
137
130k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
73
    fn deref(&self) -> &C {
136
73
        &self.counter().chan
137
73
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<i32>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
179
    fn deref(&self) -> &C {
136
179
        &self.counter().chan
137
179
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
55.3k
    fn deref(&self) -> &C {
136
55.3k
        &self.counter().chan
137
55.3k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
26.0k
    fn deref(&self) -> &C {
136
26.0k
        &self.counter().chan
137
26.0k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
111k
    fn deref(&self) -> &C {
136
111k
        &self.counter().chan
137
111k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<()>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
90.4k
    fn deref(&self) -> &C {
136
90.4k
        &self.counter().chan
137
90.4k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<alloc::boxed::Box<dyn core::any::Any + core::marker::Send>>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
14.6k
    fn deref(&self) -> &C {
136
14.6k
        &self.counter().chan
137
14.6k
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>> as core::ops::deref::Deref>::deref
Line
Count
Source
135
25.8k
    fn deref(&self) -> &C {
136
25.8k
        &self.counter().chan
137
25.8k
    }
138
}
139
140
impl<C> PartialEq for Receiver<C> {
141
9
    fn eq(&self, other: &Receiver<C>) -> bool {
142
9
        self.counter == other.counter
143
9
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::list::Channel<usize>> as core::cmp::PartialEq>::eq
Line
Count
Source
141
3
    fn eq(&self, other: &Receiver<C>) -> bool {
142
3
        self.counter == other.counter
143
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::zero::Channel<usize>> as core::cmp::PartialEq>::eq
Line
Count
Source
141
3
    fn eq(&self, other: &Receiver<C>) -> bool {
142
3
        self.counter == other.counter
143
3
    }
<crossbeam_channel::counter::Receiver<crossbeam_channel::flavors::array::Channel<usize>> as core::cmp::PartialEq>::eq
Line
Count
Source
141
3
    fn eq(&self, other: &Receiver<C>) -> bool {
142
3
        self.counter == other.counter
143
3
    }
144
}