SYMBOL INDEX (2166 symbols across 107 files) FILE: build-common.rs function convert_custom_linux_target (line 6) | fn convert_custom_linux_target(target: String) -> String { FILE: crossbeam-channel/benches/crossbeam.rs constant TOTAL_STEPS (line 11) | const TOTAL_STEPS: usize = 40_000; function num_cpus (line 13) | fn num_cpus() -> usize { function create (line 23) | fn create(b: &mut Bencher) { function oneshot (line 28) | fn oneshot(b: &mut Bencher) { function inout (line 37) | fn inout(b: &mut Bencher) { function par_inout (line 46) | fn par_inout(b: &mut Bencher) { function spsc (line 80) | fn spsc(b: &mut Bencher) { function spmc (line 109) | fn spmc(b: &mut Bencher) { function mpsc (line 145) | fn mpsc(b: &mut Bencher) { function mpmc (line 181) | fn mpmc(b: &mut Bencher) { function spsc (line 228) | fn spsc(b: &mut Bencher) { function spmc (line 257) | fn spmc(b: &mut Bencher) { function mpsc (line 293) | fn mpsc(b: &mut Bencher) { function par_inout (line 329) | fn par_inout(b: &mut Bencher) { function mpmc (line 363) | fn mpmc(b: &mut Bencher) { function create (line 411) | fn create(b: &mut Bencher) { function oneshot (line 416) | fn oneshot(b: &mut Bencher) { function spsc (line 425) | fn spsc(b: &mut Bencher) { function spmc (line 454) | fn spmc(b: &mut Bencher) { function mpsc (line 490) | fn mpsc(b: &mut Bencher) { function mpmc (line 526) | fn mpmc(b: &mut Bencher) { function create (line 573) | fn create(b: &mut Bencher) { function spsc (line 578) | fn spsc(b: &mut Bencher) { function spmc (line 607) | fn spmc(b: &mut Bencher) { function mpsc (line 643) | fn mpsc(b: &mut Bencher) { function mpmc (line 679) | fn mpmc(b: &mut Bencher) { FILE: crossbeam-channel/benchmarks/atomicring.rs constant MESSAGES (line 7) | const MESSAGES: usize = 5_000_000; constant THREADS (line 8) | const THREADS: usize = 4; function seq (line 10) | fn seq(cap: usize) { function spsc (line 28) | fn spsc(cap: usize) { function mpsc (line 57) | fn mpsc(cap: usize) { function mpmc (line 88) | fn mpmc(cap: usize) { function main (line 122) | fn main() { FILE: crossbeam-channel/benchmarks/atomicringqueue.rs constant MESSAGES (line 7) | const MESSAGES: usize = 5_000_000; constant THREADS (line 8) | const THREADS: usize = 4; function seq (line 10) | fn seq(cap: usize) { function spsc (line 28) | fn spsc(cap: usize) { function mpsc (line 51) | fn mpsc(cap: usize) { function mpmc (line 76) | fn mpmc(cap: usize) { function main (line 105) | fn main() { FILE: crossbeam-channel/benchmarks/bus.rs constant MESSAGES (line 5) | const MESSAGES: usize = 5_000_000; function seq (line 7) | fn seq(cap: usize) { function spsc (line 20) | fn spsc(cap: usize) { function main (line 38) | fn main() { FILE: crossbeam-channel/benchmarks/crossbeam-channel.rs constant MESSAGES (line 5) | const MESSAGES: usize = 5_000_000; constant THREADS (line 6) | const THREADS: usize = 4; function new (line 8) | fn new(cap: Option) -> (Sender, Receiver) { function seq (line 15) | fn seq(cap: Option) { function spsc (line 27) | fn spsc(cap: Option) { function mpsc (line 44) | fn mpsc(cap: Option) { function mpmc (line 63) | fn mpmc(cap: Option) { function select_rx (line 86) | fn select_rx(cap: Option) { function select_both (line 112) | fn select_both(cap: Option) { function main (line 147) | fn main() { FILE: crossbeam-channel/benchmarks/crossbeam-deque.rs constant MESSAGES (line 7) | const MESSAGES: usize = 5_000_000; function seq (line 9) | fn seq() { function spsc (line 26) | fn spsc() { function main (line 51) | fn main() { FILE: crossbeam-channel/benchmarks/flume.rs constant MESSAGES (line 3) | const MESSAGES: usize = 5_000_000; constant THREADS (line 4) | const THREADS: usize = 4; function shuffle (line 6) | pub fn shuffle(v: &mut [T]) { function seq_unbounded (line 40) | fn seq_unbounded() { function seq_bounded (line 52) | fn seq_bounded(cap: usize) { function spsc_unbounded (line 64) | fn spsc_unbounded() { function spsc_bounded (line 81) | fn spsc_bounded(cap: usize) { function mpsc_unbounded (line 98) | fn mpsc_unbounded() { function mpsc_bounded (line 118) | fn mpsc_bounded(cap: usize) { function main (line 138) | fn main() { FILE: crossbeam-channel/benchmarks/futures-channel.rs constant MESSAGES (line 10) | const MESSAGES: usize = 5_000_000; constant THREADS (line 11) | const THREADS: usize = 4; function seq_unbounded (line 13) | fn seq_unbounded() { function seq_bounded (line 25) | fn seq_bounded(cap: usize) { function spsc_unbounded (line 37) | fn spsc_unbounded() { function spsc_bounded (line 52) | fn spsc_bounded(cap: usize) { function mpsc_unbounded (line 67) | fn mpsc_unbounded() { function mpsc_bounded (line 88) | fn mpsc_bounded(cap: usize) { function select_rx_unbounded (line 109) | fn select_rx_unbounded() { function select_rx_bounded (line 129) | fn select_rx_bounded(cap: usize) { function main (line 151) | fn main() { FILE: crossbeam-channel/benchmarks/go.go constant MESSAGES (line 6) | MESSAGES = 5 * 1000 * 1000 constant THREADS (line 7) | THREADS = 4 function seq (line 11) | func seq(cap int) { function spsc (line 23) | func spsc(cap int) { function mpsc (line 41) | func mpsc(cap int) { function mpmc (line 63) | func mpmc(cap int) { function select_rx (line 92) | func select_rx(cap int) { function select_both (line 128) | func select_both(cap int) { function run (line 175) | func run(name string, f func(int), cap int) { function main (line 182) | func main() { FILE: crossbeam-channel/benchmarks/lockfree.rs constant MESSAGES (line 5) | const MESSAGES: usize = 5_000_000; constant THREADS (line 6) | const THREADS: usize = 4; function seq (line 10) | fn seq() { function spsc (line 24) | fn spsc() { function mpsc (line 43) | fn mpsc() { function mpmc (line 64) | fn mpmc() { function main (line 89) | fn main() { FILE: crossbeam-channel/benchmarks/message.rs constant LEN (line 3) | const LEN: usize = 1; type Message (line 6) | pub(crate) struct Message(#[allow(dead_code)] [usize; LEN]); method fmt (line 9) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function new (line 15) | pub(crate) fn new(num: usize) -> Message { FILE: crossbeam-channel/benchmarks/mpmc.rs constant MESSAGES (line 5) | const MESSAGES: usize = 5_000_000; constant THREADS (line 6) | const THREADS: usize = 4; function seq (line 8) | fn seq(cap: usize) { function spsc (line 26) | fn spsc(cap: usize) { function mpsc (line 55) | fn mpsc(cap: usize) { function mpmc (line 86) | fn mpmc(cap: usize) { function main (line 121) | fn main() { FILE: crossbeam-channel/benchmarks/mpsc.rs constant MESSAGES (line 5) | const MESSAGES: usize = 5_000_000; constant THREADS (line 6) | const THREADS: usize = 4; function shuffle (line 8) | pub fn shuffle(v: &mut [T]) { function seq_async (line 42) | fn seq_async() { function seq_sync (line 54) | fn seq_sync(cap: usize) { function spsc_async (line 66) | fn spsc_async() { function spsc_sync (line 83) | fn spsc_sync(cap: usize) { function mpsc_async (line 100) | fn mpsc_async() { function mpsc_sync (line 120) | fn mpsc_sync(cap: usize) { function main (line 140) | fn main() { FILE: crossbeam-channel/benchmarks/plot.py function read_data (line 7) | def read_data(files): function get_runs (line 18) | def get_runs(results, prefix): function find (line 28) | def find(s, x): function get_color (line 79) | def get_color(name): function plot (line 86) | def plot(results, fig, subplot, title, prefix): function plot_all (line 117) | def plot_all(results, descriptions, labels): function main (line 135) | def main(): FILE: crossbeam-channel/benchmarks/segqueue.rs constant MESSAGES (line 7) | const MESSAGES: usize = 5_000_000; constant THREADS (line 8) | const THREADS: usize = 4; function seq (line 10) | fn seq() { function spsc (line 22) | fn spsc() { function mpsc (line 45) | fn mpsc() { function mpmc (line 70) | fn mpmc() { function main (line 99) | fn main() { FILE: crossbeam-channel/examples/fibonacci.rs function fibonacci (line 8) | fn fibonacci(sender: Sender) { function main (line 17) | fn main() { FILE: crossbeam-channel/examples/matching.rs function main (line 48) | fn main() { FILE: crossbeam-channel/examples/stopwatch.rs function main (line 4) | fn main() { function main (line 9) | fn main() { FILE: crossbeam-channel/src/channel.rs function unbounded (line 50) | pub fn unbounded() -> (Sender, Receiver) { function bounded (line 113) | pub fn bounded(cap: usize) -> (Sender, Receiver) { function after (line 181) | pub fn after(duration: Duration) -> Receiver { function at (line 232) | pub fn at(when: Instant) -> Receiver { function never (line 275) | pub fn never() -> Receiver { function tick (line 335) | pub fn tick(duration: Duration) -> Receiver { type Sender (line 366) | pub struct Sender { type SenderFlavor (line 371) | enum SenderFlavor { function try_send (line 410) | pub fn try_send(&self, msg: T) -> Result<(), TrySendError> { function send (line 446) | pub fn send(&self, msg: T) -> Result<(), SendError> { function send_timeout (line 495) | pub fn send_timeout(&self, msg: T, timeout: Duration) -> Result<(), Send... function send_deadline (line 541) | pub fn send_deadline(&self, msg: T, deadline: Instant) -> Result<(), Sen... function is_empty (line 564) | pub fn is_empty(&self) -> bool { function is_full (line 587) | pub fn is_full(&self) -> bool { function len (line 609) | pub fn len(&self) -> usize { function capacity (line 633) | pub fn capacity(&self) -> Option { function same_channel (line 656) | pub fn same_channel(&self, other: &Self) -> bool { function addr (line 665) | pub(crate) fn addr(&self) -> usize { method drop (line 675) | fn drop(&mut self) { method clone (line 687) | fn clone(&self) -> Self { function fmt (line 699) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Receiver (line 724) | pub struct Receiver { type ReceiverFlavor (line 729) | enum ReceiverFlavor { function try_recv (line 778) | pub fn try_recv(&self) -> Result { function recv (line 831) | pub fn recv(&self) -> Result { function recv_timeout (line 896) | pub fn recv_timeout(&self, timeout: Duration) -> Result Result bool { function is_full (line 1010) | pub fn is_full(&self) -> bool { function len (line 1035) | pub fn len(&self) -> usize { function capacity (line 1062) | pub fn capacity(&self) -> Option { function iter (line 1101) | pub fn iter(&self) -> Iter<'_, T> { function try_iter (line 1139) | pub fn try_iter(&self) -> TryIter<'_, T> { function same_channel (line 1158) | pub fn same_channel(&self, other: &Self) -> bool { function addr (line 1170) | pub(crate) fn addr(&self) -> usize { method drop (line 1183) | fn drop(&mut self) { method clone (line 1198) | fn clone(&self) -> Self { function fmt (line 1213) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Item (line 1219) | type Item = T; type IntoIter (line 1220) | type IntoIter = Iter<'a, T>; method into_iter (line 1222) | fn into_iter(self) -> Self::IntoIter { type Item (line 1228) | type Item = T; type IntoIter (line 1229) | type IntoIter = IntoIter; method into_iter (line 1231) | fn into_iter(self) -> Self::IntoIter { type Iter (line 1264) | pub struct Iter<'a, T> { type Item (line 1271) | type Item = T; method next (line 1273) | fn next(&mut self) -> Option { function fmt (line 1279) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type TryIter (line 1318) | pub struct TryIter<'a, T> { type Item (line 1323) | type Item = T; method next (line 1325) | fn next(&mut self) -> Option { function fmt (line 1331) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type IntoIter (line 1364) | pub struct IntoIter { type Item (line 1371) | type Item = T; method next (line 1373) | fn next(&mut self) -> Option { function fmt (line 1379) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method try_select (line 1385) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 1393) | fn deadline(&self) -> Option { method register (line 1397) | fn register(&self, oper: Operation, cx: &Context) -> bool { method unregister (line 1405) | fn unregister(&self, oper: Operation) { method accept (line 1413) | fn accept(&self, token: &mut Token, cx: &Context) -> bool { method is_ready (line 1421) | fn is_ready(&self) -> bool { method watch (line 1429) | fn watch(&self, oper: Operation, cx: &Context) -> bool { method unwatch (line 1437) | fn unwatch(&self, oper: Operation) { method try_select (line 1447) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 1458) | fn deadline(&self) -> Option { method register (line 1469) | fn register(&self, oper: Operation, cx: &Context) -> bool { method unregister (line 1480) | fn unregister(&self, oper: Operation) { method accept (line 1491) | fn accept(&self, token: &mut Token, cx: &Context) -> bool { method is_ready (line 1502) | fn is_ready(&self) -> bool { method watch (line 1513) | fn watch(&self, oper: Operation, cx: &Context) -> bool { method unwatch (line 1524) | fn unwatch(&self, oper: Operation) { function write (line 1537) | pub(crate) unsafe fn write(s: &Sender, token: &mut Token, msg: T) ... function read (line 1548) | pub(crate) unsafe fn read(r: &Receiver, token: &mut Token) -> Resu... FILE: crossbeam-channel/src/context.rs type Context (line 21) | pub struct Context { method with (line 44) | pub fn with(f: F) -> R method new (line 74) | fn new() -> Self { method reset (line 87) | fn reset(&self) { method try_select (line 98) | pub fn try_select(&self, select: Selected) -> Result<(), Selected> { method selected (line 113) | pub fn selected(&self) -> Selected { method store_packet (line 121) | pub fn store_packet(&self, packet: *mut ()) { method wait_packet (line 129) | pub fn wait_packet(&self) -> *mut () { method wait_until (line 144) | pub fn wait_until(&self, deadline: Option) -> Selected { method unpark (line 173) | pub fn unpark(&self) { method thread_id (line 179) | pub fn thread_id(&self) -> ThreadId { type Inner (line 27) | struct Inner { FILE: crossbeam-channel/src/counter.rs type Counter (line 12) | struct Counter { function new (line 27) | pub(crate) fn new(chan: C) -> (Sender, Receiver) { type Sender (line 40) | pub(crate) struct Sender { function counter (line 46) | fn counter(&self) -> &Counter { function acquire (line 51) | pub(crate) fn acquire(&self) -> Self { function release (line 69) | pub(crate) unsafe fn release bool>(&self, disconnect: F) { function addr (line 79) | pub(crate) fn addr(&self) -> usize { type Target (line 85) | type Target = C; function deref (line 87) | fn deref(&self) -> &C { method eq (line 93) | fn eq(&self, other: &Self) -> bool { type Receiver (line 99) | pub(crate) struct Receiver { function counter (line 105) | fn counter(&self) -> &Counter { function acquire (line 110) | pub(crate) fn acquire(&self) -> Self { function release (line 128) | pub(crate) unsafe fn release bool>(&self, disconnect: F) { function addr (line 138) | pub(crate) fn addr(&self) -> usize { type Target (line 144) | type Target = C; function deref (line 146) | fn deref(&self) -> &C { method eq (line 152) | fn eq(&self, other: &Self) -> bool { FILE: crossbeam-channel/src/err.rs type SendError (line 12) | pub struct SendError(pub T); type TrySendError (line 20) | pub enum TrySendError { type SendTimeoutError (line 37) | pub enum SendTimeoutError { type RecvError (line 54) | pub struct RecvError; method fmt (line 271) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type TryRecvError (line 60) | pub enum TryRecvError { method fmt (line 279) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method from (line 290) | fn from(err: RecvError) -> Self { method is_empty (line 299) | pub fn is_empty(&self) -> bool { method is_disconnected (line 304) | pub fn is_disconnected(&self) -> bool { type RecvTimeoutError (line 75) | pub enum RecvTimeoutError { method fmt (line 310) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method from (line 321) | fn from(err: RecvError) -> Self { method is_timeout (line 330) | pub fn is_timeout(&self) -> bool { method is_disconnected (line 335) | pub fn is_disconnected(&self) -> bool { type TrySelectError (line 92) | pub struct TrySelectError; method fmt (line 341) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type SelectTimeoutError (line 100) | pub struct SelectTimeoutError; method fmt (line 349) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type TryReadyError (line 108) | pub struct TryReadyError; type ReadyTimeoutError (line 116) | pub struct ReadyTimeoutError; function fmt (line 119) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function fmt (line 125) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function into_inner (line 147) | pub fn into_inner(self) -> T { function fmt (line 153) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function fmt (line 162) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function from (line 173) | fn from(err: SendError) -> Self { function into_inner (line 194) | pub fn into_inner(self) -> T { function is_full (line 202) | pub fn is_full(&self) -> bool { function is_disconnected (line 207) | pub fn is_disconnected(&self) -> bool { function fmt (line 213) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function fmt (line 219) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function from (line 230) | fn from(err: SendError) -> Self { function into_inner (line 252) | pub fn into_inner(self) -> T { function is_timeout (line 260) | pub fn is_timeout(&self) -> bool { function is_disconnected (line 265) | pub fn is_disconnected(&self) -> bool { FILE: crossbeam-channel/src/flavors/array.rs type Slot (line 30) | struct Slot { type ArrayToken (line 40) | pub(crate) struct ArrayToken { method default (line 50) | fn default() -> Self { type Channel (line 59) | pub(crate) struct Channel { function with_capacity (line 96) | pub(crate) fn with_capacity(cap: usize) -> Self { function receiver (line 132) | pub(crate) fn receiver(&self) -> Receiver<'_, T> { function sender (line 137) | pub(crate) fn sender(&self) -> Sender<'_, T> { function start_send (line 142) | fn start_send(&self, token: &mut Token) -> bool { function write (line 214) | pub(crate) unsafe fn write(&self, token: &mut Token, msg: T) -> Result<(... function start_recv (line 232) | fn start_recv(&self, token: &mut Token) -> bool { function read (line 305) | pub(crate) unsafe fn read(&self, token: &mut Token) -> Result { function try_send (line 323) | pub(crate) fn try_send(&self, msg: T) -> Result<(), TrySendError> { function send (line 333) | pub(crate) fn send( function try_recv (line 386) | pub(crate) fn try_recv(&self) -> Result { function recv (line 397) | pub(crate) fn recv(&self, deadline: Option) -> Result usize { function cap (line 474) | fn cap(&self) -> usize { function capacity (line 479) | pub(crate) fn capacity(&self) -> Option { function disconnect (line 486) | pub(crate) fn disconnect(&self) -> bool { function is_disconnected (line 499) | pub(crate) fn is_disconnected(&self) -> bool { function is_empty (line 504) | pub(crate) fn is_empty(&self) -> bool { function is_full (line 516) | pub(crate) fn is_full(&self) -> bool { method drop (line 529) | fn drop(&mut self) { type Receiver (line 568) | pub(crate) struct Receiver<'a, T>(&'a Channel); type Sender (line 571) | pub(crate) struct Sender<'a, T>(&'a Channel); method try_select (line 574) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 578) | fn deadline(&self) -> Option { method register (line 582) | fn register(&self, oper: Operation, cx: &Context) -> bool { method unregister (line 587) | fn unregister(&self, oper: Operation) { method accept (line 591) | fn accept(&self, token: &mut Token, _cx: &Context) -> bool { method is_ready (line 595) | fn is_ready(&self) -> bool { method watch (line 599) | fn watch(&self, oper: Operation, cx: &Context) -> bool { method unwatch (line 604) | fn unwatch(&self, oper: Operation) { method try_select (line 610) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 614) | fn deadline(&self) -> Option { method register (line 618) | fn register(&self, oper: Operation, cx: &Context) -> bool { method unregister (line 623) | fn unregister(&self, oper: Operation) { method accept (line 627) | fn accept(&self, token: &mut Token, _cx: &Context) -> bool { method is_ready (line 631) | fn is_ready(&self) -> bool { method watch (line 635) | fn watch(&self, oper: Operation, cx: &Context) -> bool { method unwatch (line 640) | fn unwatch(&self, oper: Operation) { FILE: crossbeam-channel/src/flavors/at.rs type AtToken (line 16) | pub(crate) type AtToken = Option; type Channel (line 19) | pub(crate) struct Channel { method new_deadline (line 30) | pub(crate) fn new_deadline(when: Instant) -> Self { method try_recv (line 39) | pub(crate) fn try_recv(&self) -> Result { method recv (line 63) | pub(crate) fn recv(&self, deadline: Option) -> Result Result bool { method is_full (line 126) | pub(crate) fn is_full(&self) -> bool { method len (line 132) | pub(crate) fn len(&self) -> usize { method capacity (line 138) | pub(crate) fn capacity(&self) -> Option { method try_select (line 145) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 160) | fn deadline(&self) -> Option { method register (line 170) | fn register(&self, _oper: Operation, _cx: &Context) -> bool { method unregister (line 175) | fn unregister(&self, _oper: Operation) {} method accept (line 178) | fn accept(&self, token: &mut Token, _cx: &Context) -> bool { method is_ready (line 183) | fn is_ready(&self) -> bool { method watch (line 188) | fn watch(&self, _oper: Operation, _cx: &Context) -> bool { method unwatch (line 193) | fn unwatch(&self, _oper: Operation) {} FILE: crossbeam-channel/src/flavors/list.rs constant WRITE (line 34) | const WRITE: usize = 1; constant READ (line 35) | const READ: usize = 2; constant DESTROY (line 36) | const DESTROY: usize = 4; constant LAP (line 39) | const LAP: usize = 32; constant BLOCK_CAP (line 41) | const BLOCK_CAP: usize = LAP - 1; constant SHIFT (line 43) | const SHIFT: usize = 1; constant MARK_BIT (line 47) | const MARK_BIT: usize = 1; type Slot (line 50) | struct Slot { function wait_write (line 60) | fn wait_write(&self) { type Block (line 71) | struct Block { constant LAYOUT (line 80) | const LAYOUT: Layout = { function new (line 90) | fn new() -> Box { function wait_next (line 108) | fn wait_next(&self) -> *mut Self { function destroy (line 120) | unsafe fn destroy(this: *mut Self, start: usize) { type Position (line 142) | struct Position { type ListToken (line 152) | pub(crate) struct ListToken { method default (line 162) | fn default() -> Self { type Channel (line 177) | pub(crate) struct Channel { function new (line 193) | pub(crate) fn new() -> Self { function receiver (line 209) | pub(crate) fn receiver(&self) -> Receiver<'_, T> { function sender (line 214) | pub(crate) fn sender(&self) -> Sender<'_, T> { function start_send (line 219) | fn start_send(&self, token: &mut Token) -> bool { function write (line 302) | pub(crate) unsafe fn write(&self, token: &mut Token, msg: T) -> Result<(... function start_recv (line 321) | fn start_recv(&self, token: &mut Token) -> bool { function read (line 406) | pub(crate) unsafe fn read(&self, token: &mut Token) -> Result { function try_send (line 433) | pub(crate) fn try_send(&self, msg: T) -> Result<(), TrySendError> { function send (line 441) | pub(crate) fn send( function try_recv (line 455) | pub(crate) fn try_recv(&self) -> Result { function recv (line 466) | pub(crate) fn recv(&self, deadline: Option) -> Result usize { function capacity (line 554) | pub(crate) fn capacity(&self) -> Option { function disconnect_senders (line 561) | pub(crate) fn disconnect_senders(&self) -> bool { function disconnect_receivers (line 575) | pub(crate) fn disconnect_receivers(&self) -> bool { function discard_all_messages (line 591) | fn discard_all_messages(&self) { function is_disconnected (line 656) | pub(crate) fn is_disconnected(&self) -> bool { function is_empty (line 661) | pub(crate) fn is_empty(&self) -> bool { function is_full (line 668) | pub(crate) fn is_full(&self) -> bool { method drop (line 674) | fn drop(&mut self) { type Receiver (line 711) | pub(crate) struct Receiver<'a, T>(&'a Channel); type Sender (line 714) | pub(crate) struct Sender<'a, T>(&'a Channel); method try_select (line 717) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 721) | fn deadline(&self) -> Option { method register (line 725) | fn register(&self, oper: Operation, cx: &Context) -> bool { method unregister (line 730) | fn unregister(&self, oper: Operation) { method accept (line 734) | fn accept(&self, token: &mut Token, _cx: &Context) -> bool { method is_ready (line 738) | fn is_ready(&self) -> bool { method watch (line 742) | fn watch(&self, oper: Operation, cx: &Context) -> bool { method unwatch (line 747) | fn unwatch(&self, oper: Operation) { method try_select (line 753) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 757) | fn deadline(&self) -> Option { method register (line 761) | fn register(&self, _oper: Operation, _cx: &Context) -> bool { method unregister (line 765) | fn unregister(&self, _oper: Operation) {} method accept (line 767) | fn accept(&self, token: &mut Token, _cx: &Context) -> bool { method is_ready (line 771) | fn is_ready(&self) -> bool { method watch (line 775) | fn watch(&self, _oper: Operation, _cx: &Context) -> bool { method unwatch (line 779) | fn unwatch(&self, _oper: Operation) {} FILE: crossbeam-channel/src/flavors/never.rs type NeverToken (line 16) | pub(crate) type NeverToken = (); type Channel (line 19) | pub(crate) struct Channel { function new (line 26) | pub(crate) fn new() -> Self { function try_recv (line 34) | pub(crate) fn try_recv(&self) -> Result { function recv (line 40) | pub(crate) fn recv(&self, deadline: Option) -> Result Result { function is_empty (line 53) | pub(crate) fn is_empty(&self) -> bool { function is_full (line 59) | pub(crate) fn is_full(&self) -> bool { function len (line 65) | pub(crate) fn len(&self) -> usize { function capacity (line 71) | pub(crate) fn capacity(&self) -> Option { method try_select (line 78) | fn try_select(&self, _token: &mut Token) -> bool { method deadline (line 83) | fn deadline(&self) -> Option { method register (line 88) | fn register(&self, _oper: Operation, _cx: &Context) -> bool { method unregister (line 93) | fn unregister(&self, _oper: Operation) {} method accept (line 96) | fn accept(&self, token: &mut Token, _cx: &Context) -> bool { method is_ready (line 101) | fn is_ready(&self) -> bool { method watch (line 106) | fn watch(&self, _oper: Operation, _cx: &Context) -> bool { method unwatch (line 111) | fn unwatch(&self, _oper: Operation) {} FILE: crossbeam-channel/src/flavors/tick.rs type TickToken (line 17) | pub(crate) type TickToken = Option; type Align (line 36) | struct Align(T); function is_lock_free (line 39) | fn is_lock_free() { type Channel (line 61) | pub(crate) struct Channel { method new (line 72) | pub(crate) fn new(delivery_time: Instant, dur: Duration) -> Self { method try_recv (line 81) | pub(crate) fn try_recv(&self) -> Result { method recv (line 102) | pub(crate) fn recv(&self, deadline: Option) -> Result Result bool { method is_full (line 146) | pub(crate) fn is_full(&self) -> bool { method len (line 152) | pub(crate) fn len(&self) -> usize { method capacity (line 158) | pub(crate) fn capacity(&self) -> Option { method try_select (line 165) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 180) | fn deadline(&self) -> Option { method register (line 185) | fn register(&self, _oper: Operation, _cx: &Context) -> bool { method unregister (line 190) | fn unregister(&self, _oper: Operation) {} method accept (line 193) | fn accept(&self, token: &mut Token, _cx: &Context) -> bool { method is_ready (line 198) | fn is_ready(&self) -> bool { method watch (line 203) | fn watch(&self, _oper: Operation, _cx: &Context) -> bool { method unwatch (line 208) | fn unwatch(&self, _oper: Operation) {} FILE: crossbeam-channel/src/flavors/zero.rs type ZeroToken (line 25) | pub(crate) struct ZeroToken(*mut ()); method fmt (line 34) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method default (line 28) | fn default() -> Self { type Packet (line 40) | struct Packet { function empty_on_stack (line 53) | fn empty_on_stack() -> Self { function empty_on_heap (line 62) | fn empty_on_heap() -> Box { function message_on_stack (line 71) | fn message_on_stack(msg: T) -> Self { function wait_ready (line 80) | fn wait_ready(&self) { type Inner (line 89) | struct Inner { type Channel (line 101) | pub(crate) struct Channel { function new (line 111) | pub(crate) fn new() -> Self { function receiver (line 123) | pub(crate) fn receiver(&self) -> Receiver<'_, T> { function sender (line 128) | pub(crate) fn sender(&self) -> Sender<'_, T> { function start_send (line 133) | fn start_send(&self, token: &mut Token) -> bool { function write (line 149) | pub(crate) unsafe fn write(&self, token: &mut Token, msg: T) -> Result<(... function start_recv (line 162) | fn start_recv(&self, token: &mut Token) -> bool { function read (line 178) | pub(crate) unsafe fn read(&self, token: &mut Token) -> Result { function try_send (line 204) | pub(crate) fn try_send(&self, msg: T) -> Result<(), TrySendError> { function send (line 224) | pub(crate) fn send( function try_recv (line 281) | pub(crate) fn try_recv(&self) -> Result { function recv (line 298) | pub(crate) fn recv(&self, deadline: Option) -> Result bool { function len (line 376) | pub(crate) fn len(&self) -> usize { function capacity (line 381) | pub(crate) fn capacity(&self) -> Option { function is_empty (line 386) | pub(crate) fn is_empty(&self) -> bool { function is_full (line 391) | pub(crate) fn is_full(&self) -> bool { type Receiver (line 397) | pub(crate) struct Receiver<'a, T>(&'a Channel); type Sender (line 400) | pub(crate) struct Sender<'a, T>(&'a Channel); method try_select (line 403) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 407) | fn deadline(&self) -> Option { method register (line 411) | fn register(&self, oper: Operation, cx: &Context) -> bool { method unregister (line 422) | fn unregister(&self, oper: Operation) { method accept (line 430) | fn accept(&self, token: &mut Token, cx: &Context) -> bool { method is_ready (line 435) | fn is_ready(&self) -> bool { method watch (line 440) | fn watch(&self, oper: Operation, cx: &Context) -> bool { method unwatch (line 446) | fn unwatch(&self, oper: Operation) { method try_select (line 453) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 457) | fn deadline(&self) -> Option { method register (line 461) | fn register(&self, oper: Operation, cx: &Context) -> bool { method unregister (line 472) | fn unregister(&self, oper: Operation) { method accept (line 480) | fn accept(&self, token: &mut Token, cx: &Context) -> bool { method is_ready (line 485) | fn is_ready(&self) -> bool { method watch (line 490) | fn watch(&self, oper: Operation, cx: &Context) -> bool { method unwatch (line 496) | fn unwatch(&self, oper: Operation) { FILE: crossbeam-channel/src/select.rs type Token (line 24) | pub struct Token { type Operation (line 36) | pub struct Operation(usize); method hook (line 45) | pub fn hook(r: &mut T) -> Self { type Selected (line 56) | pub enum Selected { method from (line 72) | fn from(val: usize) -> Self { function from (line 84) | fn from(val: Selected) -> Self { type SelectHandle (line 99) | pub trait SelectHandle { method try_select (line 101) | fn try_select(&self, token: &mut Token) -> bool; method deadline (line 104) | fn deadline(&self) -> Option; method register (line 107) | fn register(&self, oper: Operation, cx: &Context) -> bool; method unregister (line 110) | fn unregister(&self, oper: Operation); method accept (line 113) | fn accept(&self, token: &mut Token, cx: &Context) -> bool; method is_ready (line 116) | fn is_ready(&self) -> bool; method watch (line 119) | fn watch(&self, oper: Operation, cx: &Context) -> bool; method unwatch (line 122) | fn unwatch(&self, oper: Operation); method try_select (line 126) | fn try_select(&self, token: &mut Token) -> bool { method deadline (line 130) | fn deadline(&self) -> Option { method register (line 134) | fn register(&self, oper: Operation, cx: &Context) -> bool { method unregister (line 138) | fn unregister(&self, oper: Operation) { method accept (line 142) | fn accept(&self, token: &mut Token, cx: &Context) -> bool { method is_ready (line 146) | fn is_ready(&self) -> bool { method watch (line 150) | fn watch(&self, oper: Operation, cx: &Context) -> bool { method unwatch (line 154) | fn unwatch(&self, oper: Operation) { type Timeout (line 161) | enum Timeout { function run_select (line 176) | fn run_select( function run_ready (line 327) | fn run_ready( function try_select (line 456) | pub fn try_select<'a>( function select (line 474) | pub fn select<'a>( function select_timeout (line 494) | pub fn select_timeout<'a>( function select_deadline (line 507) | pub(crate) fn select_deadline<'a>( function sender_addr (line 524) | pub fn sender_addr(s: &Sender) -> usize { function receiver_addr (line 528) | pub fn receiver_addr(s: &Receiver) -> usize { type Select (line 616) | pub struct Select<'a> { function new (line 643) | pub fn new() -> Self { function new_biased (line 665) | pub fn new_biased() -> Self { function send (line 686) | pub fn send(&mut self, s: &'a Sender) -> usize { function recv (line 708) | pub fn recv(&mut self, r: &'a Receiver) -> usize { function remove (line 752) | pub fn remove(&mut self, index: usize) { function try_select (line 809) | pub fn try_select(&mut self) -> Result, TrySelectE... function select (line 860) | pub fn select(&mut self) -> SelectedOperation<'a> { function select_timeout (line 911) | pub fn select_timeout( function select_deadline (line 967) | pub fn select_deadline( function try_ready (line 1009) | pub fn try_ready(&mut self) -> Result { function ready (line 1062) | pub fn ready(&mut self) -> usize { function ready_timeout (line 1114) | pub fn ready_timeout(&mut self, timeout: Duration) -> Result Result Self { method default (line 1186) | fn default() -> Self { function fmt (line 1192) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type SelectedOperation (line 1209) | pub struct SelectedOperation<'a> { function index (line 1248) | pub fn index(&self) -> usize { function send (line 1276) | pub fn send(mut self, s: &Sender, msg: T) -> Result<(), SendError<... function recv (line 1310) | pub fn recv(mut self, r: &Receiver) -> Result { function fmt (line 1322) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method drop (line 1328) | fn drop(&mut self) { FILE: crossbeam-channel/src/utils.rs function shuffle (line 7) | pub(crate) fn shuffle(v: &mut [T]) { function sleep_until (line 43) | pub(crate) fn sleep_until(deadline: Option) { FILE: crossbeam-channel/src/waker.rs type Entry (line 19) | pub(crate) struct Entry { type Waker (line 34) | pub(crate) struct Waker { method new (line 45) | pub(crate) fn new() -> Self { method register (line 54) | pub(crate) fn register(&mut self, oper: Operation, cx: &Context) { method register_with_packet (line 60) | pub(crate) fn register_with_packet(&mut self, oper: Operation, packet:... method unregister (line 70) | pub(crate) fn unregister(&mut self, oper: Operation) -> Option { method try_select (line 86) | pub(crate) fn try_select(&mut self) -> Option { method can_select (line 117) | pub(crate) fn can_select(&self) -> bool { method watch (line 131) | pub(crate) fn watch(&mut self, oper: Operation, cx: &Context) { method unwatch (line 141) | pub(crate) fn unwatch(&mut self, oper: Operation) { method notify (line 147) | pub(crate) fn notify(&mut self) { method disconnect (line 157) | pub(crate) fn disconnect(&mut self) { method drop (line 175) | fn drop(&mut self) { type SyncWaker (line 184) | pub(crate) struct SyncWaker { method new (line 195) | pub(crate) fn new() -> Self { method register (line 204) | pub(crate) fn register(&self, oper: Operation, cx: &Context) { method unregister (line 215) | pub(crate) fn unregister(&self, oper: Operation) -> Option { method notify (line 227) | pub(crate) fn notify(&self) { method watch (line 243) | pub(crate) fn watch(&self, oper: Operation, cx: &Context) { method unwatch (line 254) | pub(crate) fn unwatch(&self, oper: Operation) { method disconnect (line 265) | pub(crate) fn disconnect(&self) { method drop (line 277) | fn drop(&mut self) { function current_thread_id (line 284) | fn current_thread_id() -> ThreadId { FILE: crossbeam-channel/tests/after.rs function ms (line 14) | fn ms(ms: u64) -> Duration { function fire (line 19) | fn fire() { function capacity (line 48) | fn capacity() { function len_empty_full (line 58) | fn len_empty_full() { function try_recv (line 80) | fn try_recv() { function recv (line 97) | fn recv() { function recv_timeout (line 114) | fn recv_timeout() { function recv_two (line 136) | fn recv_two() { function recv_race (line 159) | fn recv_race() { function stress_default (line 172) | fn stress_default() { function select (line 191) | fn select() { function ready (line 235) | fn ready() { function stress_clone (line 278) | fn stress_clone() { function fairness (line 304) | fn fairness() { function fairness_duplicates (line 322) | fn fairness_duplicates() { FILE: crossbeam-channel/tests/array.rs function ms (line 16) | fn ms(ms: u64) -> Duration { function smoke (line 21) | fn smoke() { function capacity (line 34) | fn capacity() { function len_empty_full (line 43) | fn len_empty_full() { function try_recv (line 82) | fn try_recv() { function recv (line 102) | fn recv() { function recv_timeout (line 125) | fn recv_timeout() { function try_send (line 146) | fn try_send() { function send (line 169) | fn send() { function send_timeout (line 193) | fn send_timeout() { function send_after_disconnect (line 221) | fn send_after_disconnect() { function recv_after_disconnect (line 239) | fn recv_after_disconnect() { function len (line 255) | fn len() { function disconnect_wakes_sender (line 315) | fn disconnect_wakes_sender() { function disconnect_wakes_receiver (line 332) | fn disconnect_wakes_receiver() { function spsc (line 348) | fn spsc() { function mpmc (line 370) | fn mpmc() { function stress_oneshot (line 402) | fn stress_oneshot() { function stress_iter (line 417) | fn stress_iter() { function stress_timeout_two_threads (line 447) | fn stress_timeout_two_threads() { function drops (line 484) | fn drops() { function linearizable (line 535) | fn linearizable() { function fairness (line 555) | fn fairness() { function fairness_duplicates (line 577) | fn fairness_duplicates() { function recv_in_send (line 600) | fn recv_in_send() { function channel_through_channel (line 621) | fn channel_through_channel() { function panic_on_drop (line 659) | fn panic_on_drop() { FILE: crossbeam-channel/tests/golang.rs function ms (line 29) | fn ms(ms: u64) -> Duration { type Chan (line 33) | struct Chan { type ChanInner (line 37) | struct ChanInner { method clone (line 49) | fn clone(&self) -> Self { function send (line 57) | fn send(&self, msg: T) { function try_recv (line 69) | fn try_recv(&self) -> Option { function recv (line 74) | fn recv(&self) -> Option { function close_s (line 79) | fn close_s(&self) { function close_r (line 88) | fn close_r(&self) { function has_rx (line 97) | fn has_rx(&self) -> bool { function has_tx (line 101) | fn has_tx(&self) -> bool { function rx (line 105) | fn rx(&self) -> Receiver { function tx (line 113) | fn tx(&self) -> Sender { type Item (line 123) | type Item = T; method next (line 125) | fn next(&mut self) -> Option { type Item (line 131) | type Item = T; type IntoIter (line 132) | type IntoIter = Chan; method into_iter (line 134) | fn into_iter(self) -> Self::IntoIter { function make (line 139) | fn make(cap: usize) -> Chan { function make_unbounded (line 153) | fn make_unbounded() -> Chan { type WaitGroup (line 168) | struct WaitGroup(Arc); method new (line 176) | fn new() -> Self { method add (line 183) | fn add(&self, delta: i32) { method done (line 190) | fn done(&self) { method wait (line 194) | fn wait(&self) { type WaitGroupInner (line 170) | struct WaitGroupInner { type Defer (line 202) | struct Defer { method drop (line 207) | fn drop(&mut self) { type Counter (line 215) | struct Counter; method alloc (line 219) | unsafe fn alloc(&self, layout: Layout) -> *mut u8 { method dealloc (line 227) | unsafe fn dealloc(&self, ptr: *mut u8, layout: Layout) { constant ITERATIONS (line 272) | const ITERATIONS: i32 = if cfg!(miri) { 100 } else { 10_000 }; function sender (line 274) | fn sender(n: i32, c1: Chan, c2: Chan, c3: Chan, c4: Chan<... function mux (line 290) | fn mux(out: Chan, inp: Chan, done: Chan) { function recver (line 297) | fn recver(inp: Chan) { function main (line 309) | fn main() { constant N (line 337) | const N: i32 = 10; function asynch_fifo (line 340) | fn asynch_fifo() { function chain (line 352) | fn chain(ch: Chan, val: i32, inp: Chan, out: Chan) { function synch_fifo (line 361) | fn synch_fifo() { function f (line 384) | fn f(left: Chan, right: Chan) { function main (line 389) | fn main() { function i32receiver (line 411) | fn i32receiver(c: Chan, strobe: Chan) { function i32sender (line 418) | fn i32sender(c: Chan, strobe: Chan) { function i64receiver (line 423) | fn i64receiver(c: Chan, strobe: Chan) { function i64sender (line 430) | fn i64sender(c: Chan, strobe: Chan) { function breceiver (line 435) | fn breceiver(c: Chan, strobe: Chan) { function bsender (line 442) | fn bsender(c: Chan, strobe: Chan) { function sreceiver (line 447) | fn sreceiver(c: Chan, strobe: Chan) { function ssender (line 454) | fn ssender(c: Chan, strobe: Chan) { constant MAX_TRIES (line 459) | const MAX_TRIES: usize = 10000; function main (line 462) | fn main() { function main (line 680) | fn main() { constant N (line 731) | const N: i32 = if cfg!(miri) { 200 } else { 100000 }; function main (line 734) | fn main() { function main (line 779) | fn main() { function main (line 795) | fn main() { function recv1 (line 820) | fn recv1(c: Chan) { function recv2 (line 824) | fn recv2(c: Chan) { function recv3 (line 830) | fn recv3(c: Chan) { function send1 (line 838) | fn send1(recv: fn(Chan)) { function send2 (line 845) | fn send2(recv: fn(Chan)) { function send3 (line 854) | fn send3(recv: fn(Chan)) { function main (line 866) | fn main() { function generate (line 888) | fn generate(ch: Chan) { function filter (line 896) | fn filter(in_ch: Chan, out_ch: Chan, prime: i32) { function sieve (line 904) | fn sieve(primes: Chan) { function main (line 918) | fn main() { function zero_size_struct (line 949) | fn zero_size_struct() { function zero_size_array (line 955) | fn zero_size_array() { function test_chan (line 965) | fn test_chan() { function test_nonblock_recv_race (line 1106) | fn test_nonblock_recv_race() { function test_nonblock_select_race (line 1127) | fn test_nonblock_select_race() { function test_nonblock_select_race2 (line 1160) | fn test_nonblock_select_race2() { function test_self_select (line 1193) | fn test_self_select() { function test_select_stress (line 1235) | fn test_select_stress() { function test_select_fairness (line 1341) | fn test_select_fairness() { function test_chan_send_interface (line 1405) | fn test_chan_send_interface() { function test_pseudo_random_send (line 1424) | fn test_pseudo_random_send() { function test_multi_consumer (line 1466) | fn test_multi_consumer() { function test_select_duplicate_channel (line 1515) | fn test_select_duplicate_channel() { constant MESSAGES_PER_CHANEL (line 1560) | const MESSAGES_PER_CHANEL: u32 = 76; constant MESSAGES_RANGE_LEN (line 1561) | const MESSAGES_RANGE_LEN: u32 = 100; constant END (line 1562) | const END: i32 = 10000; type ChanWithVals (line 1564) | struct ChanWithVals { method with_capacity (line 1588) | fn with_capacity(capacity: usize) -> Self { method closed (line 1596) | fn closed() -> Self { method rv (line 1603) | fn rv(&self) -> i32 { method sv (line 1607) | fn sv(&self) -> i32 { method send (line 1611) | fn send(&mut self, tot: &Mutex) -> bool { method recv (line 1625) | fn recv(&mut self, v: i32, tot: &Mutex) -> bool { type Totals (line 1572) | struct Totals { type Context (line 1579) | struct Context { method nproc (line 1651) | fn nproc(&self) -> &Mutex { method cval (line 1655) | fn cval(&self) -> &Mutex { method tot (line 1659) | fn tot(&self) -> &Mutex { method randx (line 1663) | fn randx(&self) -> &Mutex { method clone (line 1641) | fn clone(&self) -> Self { method clone (line 1669) | fn clone(&self) -> Self { function nrand (line 1680) | fn nrand(n: i32, randx: &Mutex) -> i32 { function change_nproc (line 1689) | fn change_nproc(adjust: i32, nproc: &Mutex) -> i32 { function mkchan (line 1695) | fn mkchan(c: usize, n: usize, cval: &Mutex) -> Vec { function expect (line 1708) | fn expect(v: i32, v0: i32) -> i32 { function send (line 1719) | fn send(mut c: ChanWithVals, ctx: Context) { function recv (line 1732) | fn recv(mut c: ChanWithVals, ctx: Context) { function sel (line 1746) | fn sel( function get (line 1805) | fn get(vec: &[ChanWithVals], idx: usize) -> ChanWithVals { function test1 (line 1810) | fn test1(c: ChanWithVals, ctx: &mut Context) { function test2 (line 1817) | fn test2(c: usize, ctx: &mut Context) { function test3 (line 1845) | fn test3(c: usize, ctx: &mut Context) { function test4 (line 1873) | fn test4(c: usize, ctx: &mut Context) { function test5 (line 1910) | fn test5(c: usize, ctx: &mut Context) { function test6 (line 1947) | fn test6(c: usize, ctx: &mut Context) { function wait (line 1995) | fn wait(ctx: &mut Context) { function tests (line 2002) | fn tests(c: usize, ctx: &mut Context) { function main (line 2028) | fn main() { constant N (line 2061) | const N: usize = if cfg!(miri) { 20 } else { 1000 }; constant M (line 2063) | const M: usize = 10; constant W (line 2065) | const W: usize = 2; function r (line 2067) | fn r(c: Chan, m: usize, h: Arc>) { function s (line 2083) | fn s(c: Chan, h: Arc>) { function main (line 2099) | fn main() { FILE: crossbeam-channel/tests/iter.rs function nested_recv_iter (line 7) | fn nested_recv_iter() { function recv_iter_break (line 30) | fn recv_iter_break() { function recv_try_iter (line 58) | fn recv_try_iter() { function recv_into_iter_owned (line 86) | fn recv_into_iter_owned() { function recv_into_iter_borrowed (line 100) | fn recv_into_iter_borrowed() { FILE: crossbeam-channel/tests/list.rs function ms (line 16) | fn ms(ms: u64) -> Duration { function smoke (line 21) | fn smoke() { function capacity (line 34) | fn capacity() { function len_empty_full (line 41) | fn len_empty_full() { function try_recv (line 72) | fn try_recv() { function recv (line 92) | fn recv() { function recv_timeout (line 115) | fn recv_timeout() { function try_send (line 136) | fn try_send() { function send (line 149) | fn send() { function send_timeout (line 162) | fn send_timeout() { function send_after_disconnect (line 178) | fn send_after_disconnect() { function recv_after_disconnect (line 196) | fn recv_after_disconnect() { function len (line 212) | fn len() { function disconnect_wakes_receiver (line 233) | fn disconnect_wakes_receiver() { function spsc (line 249) | fn spsc() { function mpmc (line 271) | fn mpmc() { function stress_oneshot (line 305) | fn stress_oneshot() { function stress_iter (line 320) | fn stress_iter() { function stress_timeout_two_threads (line 350) | fn stress_timeout_two_threads() { function drops (line 383) | fn drops() { function linearizable (line 434) | fn linearizable() { function fairness (line 454) | fn fairness() { function fairness_duplicates (line 476) | fn fairness_duplicates() { function recv_in_send (line 499) | fn recv_in_send() { function channel_through_channel (line 509) | fn channel_through_channel() { function stack_overflow (line 549) | fn stack_overflow() { FILE: crossbeam-channel/tests/mpsc.rs type Sender (line 33) | struct Sender { function send (line 38) | fn send(&self, t: T) -> Result<(), SendError> { method clone (line 44) | fn clone(&self) -> Self { type SyncSender (line 51) | struct SyncSender { function send (line 56) | fn send(&self, t: T) -> Result<(), SendError> { function try_send (line 60) | fn try_send(&self, t: T) -> Result<(), TrySendError> { method clone (line 69) | fn clone(&self) -> Self { type Receiver (line 76) | struct Receiver { function try_recv (line 81) | fn try_recv(&self) -> Result { function recv (line 88) | fn recv(&self) -> Result { function recv_timeout (line 92) | fn recv_timeout(&self, timeout: Duration) -> Result { function iter (line 99) | fn iter(&self) -> Iter<'_, T> { function try_iter (line 103) | fn try_iter(&self) -> TryIter<'_, T> { type Item (line 109) | type Item = T; type IntoIter (line 110) | type IntoIter = Iter<'a, T>; method into_iter (line 112) | fn into_iter(self) -> Self::IntoIter { type Item (line 118) | type Item = T; type IntoIter (line 119) | type IntoIter = IntoIter; method into_iter (line 121) | fn into_iter(self) -> Self::IntoIter { type TryIter (line 126) | struct TryIter<'a, T> { type Item (line 131) | type Item = T; method next (line 133) | fn next(&mut self) -> Option { type Iter (line 138) | struct Iter<'a, T> { type Item (line 143) | type Item = T; method next (line 145) | fn next(&mut self) -> Option { type IntoIter (line 150) | struct IntoIter { type Item (line 155) | type Item = T; method next (line 157) | fn next(&mut self) -> Option { function channel (line 162) | fn channel() -> (Sender, Receiver) { function sync_channel (line 169) | fn sync_channel(bound: usize) -> (SyncSender, Receiver) { function stress_factor (line 199) | fn stress_factor() -> usize { function smoke (line 207) | fn smoke() { function drop_full (line 214) | fn drop_full() { function drop_full_shared (line 220) | fn drop_full_shared() { function smoke_shared (line 228) | fn smoke_shared() { function smoke_threads (line 238) | fn smoke_threads() { function smoke_port_gone (line 248) | fn smoke_port_gone() { function smoke_shared_port_gone (line 255) | fn smoke_shared_port_gone() { function smoke_shared_port_gone2 (line 262) | fn smoke_shared_port_gone2() { function port_gone_concurrent (line 271) | fn port_gone_concurrent() { function port_gone_concurrent_shared (line 281) | fn port_gone_concurrent_shared() { function smoke_chan_gone (line 292) | fn smoke_chan_gone() { function smoke_chan_gone_shared (line 299) | fn smoke_chan_gone_shared() { function chan_gone_concurrent (line 308) | fn chan_gone_concurrent() { function stress (line 319) | fn stress() { function stress_shared (line 335) | fn stress_shared() { function send_from_outside_runtime (line 365) | fn send_from_outside_runtime() { function recv_from_outside_runtime (line 385) | fn recv_from_outside_runtime() { function no_runtime (line 399) | fn no_runtime() { function oneshot_single_thread_close_port_first (line 415) | fn oneshot_single_thread_close_port_first() { function oneshot_single_thread_close_chan_first (line 422) | fn oneshot_single_thread_close_chan_first() { function oneshot_single_thread_send_port_close (line 429) | fn oneshot_single_thread_send_port_close() { function oneshot_single_thread_recv_chan_close (line 437) | fn oneshot_single_thread_recv_chan_close() { function oneshot_single_thread_send_then_recv (line 444) | fn oneshot_single_thread_send_then_recv() { function oneshot_single_thread_try_send_open (line 451) | fn oneshot_single_thread_try_send_open() { function oneshot_single_thread_try_send_closed (line 458) | fn oneshot_single_thread_try_send_closed() { function oneshot_single_thread_try_recv_open (line 465) | fn oneshot_single_thread_try_recv_open() { function oneshot_single_thread_try_recv_closed (line 472) | fn oneshot_single_thread_try_recv_closed() { function oneshot_single_thread_peek_data (line 479) | fn oneshot_single_thread_peek_data() { function oneshot_single_thread_peek_close (line 487) | fn oneshot_single_thread_peek_close() { function oneshot_single_thread_peek_open (line 495) | fn oneshot_single_thread_peek_open() { function oneshot_multi_task_recv_then_send (line 501) | fn oneshot_multi_task_recv_then_send() { function oneshot_multi_task_recv_then_close (line 512) | fn oneshot_multi_task_recv_then_close() { function oneshot_multi_thread_close_stress (line 526) | fn oneshot_multi_thread_close_stress() { function oneshot_multi_thread_send_close_stress (line 543) | fn oneshot_multi_thread_send_close_stress() { function oneshot_multi_thread_recv_close_stress (line 564) | fn oneshot_multi_thread_recv_close_stress() { function oneshot_multi_thread_send_recv_stress (line 591) | fn oneshot_multi_thread_send_recv_stress() { function stream_send_recv_stress (line 608) | fn stream_send_recv_stress() { function oneshot_single_thread_recv_timeout (line 649) | fn oneshot_single_thread_recv_timeout() { function stress_recv_timeout_two_threads (line 662) | fn stress_recv_timeout_two_threads() { function recv_timeout_upgrade (line 693) | fn recv_timeout_upgrade() { function stress_recv_timeout_shared (line 704) | fn stress_recv_timeout_shared() { function recv_a_lot (line 739) | fn recv_a_lot() { function shared_recv_timeout (line 753) | fn shared_recv_timeout() { function shared_chan_stress (line 781) | fn shared_chan_stress() { function test_nested_recv_iter (line 802) | fn test_nested_recv_iter() { function test_recv_iter_break (line 823) | fn test_recv_iter_break() { function test_recv_try_iter (line 849) | fn test_recv_try_iter() { function test_recv_into_iter_owned (line 877) | fn test_recv_into_iter_owned() { function test_recv_into_iter_borrowed (line 891) | fn test_recv_into_iter_borrowed() { function try_recv_states (line 903) | fn try_recv_states() { function destroy_upgraded_shared_port_when_sender_still_active (line 930) | fn destroy_upgraded_shared_port_when_sender_still_active() { function issue_32114 (line 954) | fn issue_32114() { function stress_factor (line 967) | fn stress_factor() -> usize { function smoke (line 975) | fn smoke() { function drop_full (line 982) | fn drop_full() { function smoke_shared (line 988) | fn smoke_shared() { function recv_timeout (line 998) | fn recv_timeout() { function smoke_threads (line 1009) | fn smoke_threads() { function smoke_port_gone (line 1019) | fn smoke_port_gone() { function smoke_shared_port_gone2 (line 1026) | fn smoke_shared_port_gone2() { function port_gone_concurrent (line 1035) | fn port_gone_concurrent() { function port_gone_concurrent_shared (line 1045) | fn port_gone_concurrent_shared() { function smoke_chan_gone (line 1056) | fn smoke_chan_gone() { function smoke_chan_gone_shared (line 1063) | fn smoke_chan_gone_shared() { function chan_gone_concurrent (line 1072) | fn chan_gone_concurrent() { function stress (line 1083) | fn stress() { function stress_recv_timeout_two_threads (line 1099) | fn stress_recv_timeout_two_threads() { function stress_recv_timeout_shared (line 1127) | fn stress_recv_timeout_shared() { function stress_shared (line 1173) | fn stress_shared() { function oneshot_single_thread_close_port_first (line 1206) | fn oneshot_single_thread_close_port_first() { function oneshot_single_thread_close_chan_first (line 1213) | fn oneshot_single_thread_close_chan_first() { function oneshot_single_thread_send_port_close (line 1220) | fn oneshot_single_thread_send_port_close() { function oneshot_single_thread_recv_chan_close (line 1228) | fn oneshot_single_thread_recv_chan_close() { function oneshot_single_thread_send_then_recv (line 1235) | fn oneshot_single_thread_send_then_recv() { function oneshot_single_thread_try_send_open (line 1242) | fn oneshot_single_thread_try_send_open() { function oneshot_single_thread_try_send_closed (line 1249) | fn oneshot_single_thread_try_send_closed() { function oneshot_single_thread_try_send_closed2 (line 1256) | fn oneshot_single_thread_try_send_closed2() { function oneshot_single_thread_try_recv_open (line 1262) | fn oneshot_single_thread_try_recv_open() { function oneshot_single_thread_try_recv_closed (line 1269) | fn oneshot_single_thread_try_recv_closed() { function oneshot_single_thread_try_recv_closed_with_data (line 1276) | fn oneshot_single_thread_try_recv_closed_with_data() { function oneshot_single_thread_peek_data (line 1285) | fn oneshot_single_thread_peek_data() { function oneshot_single_thread_peek_close (line 1293) | fn oneshot_single_thread_peek_close() { function oneshot_single_thread_peek_open (line 1301) | fn oneshot_single_thread_peek_open() { function oneshot_multi_task_recv_then_send (line 1307) | fn oneshot_multi_task_recv_then_send() { function oneshot_multi_task_recv_then_close (line 1318) | fn oneshot_multi_task_recv_then_close() { function oneshot_multi_thread_close_stress (line 1332) | fn oneshot_multi_thread_close_stress() { function oneshot_multi_thread_send_close_stress (line 1349) | fn oneshot_multi_thread_send_close_stress() { function oneshot_multi_thread_recv_close_stress (line 1370) | fn oneshot_multi_thread_recv_close_stress() { function oneshot_multi_thread_send_recv_stress (line 1396) | fn oneshot_multi_thread_send_recv_stress() { function stream_send_recv_stress (line 1413) | fn stream_send_recv_stress() { function recv_a_lot (line 1454) | fn recv_a_lot() { function shared_chan_stress (line 1468) | fn shared_chan_stress() { function test_nested_recv_iter (line 1489) | fn test_nested_recv_iter() { function test_recv_iter_break (line 1510) | fn test_recv_iter_break() { function try_recv_states (line 1536) | fn try_recv_states() { function destroy_upgraded_shared_port_when_sender_still_active (line 1563) | fn destroy_upgraded_shared_port_when_sender_still_active() { function send1 (line 1587) | fn send1() { function send2 (line 1597) | fn send2() { function send3 (line 1607) | fn send3() { function send4 (line 1618) | fn send4() { function try_send1 (line 1639) | fn try_send1() { function try_send2 (line 1645) | fn try_send2() { function try_send3 (line 1652) | fn try_send3() { function issue_15761 (line 1660) | fn issue_15761() { function smoke (line 1687) | fn smoke() { function smoke2 (line 1712) | fn smoke2() { function closed (line 1729) | fn closed() { function unblocks (line 1741) | fn unblocks() { function both_ready (line 1770) | fn both_ready() { function stress (line 1799) | fn stress() { function cloning (line 1829) | fn cloning() { function cloning2 (line 1853) | fn cloning2() { function cloning3 (line 1876) | fn cloning3() { function preflight1 (line 1898) | fn preflight1() { function preflight2 (line 1907) | fn preflight2() { function preflight3 (line 1917) | fn preflight3() { function preflight4 (line 1927) | fn preflight4() { function preflight5 (line 1936) | fn preflight5() { function preflight6 (line 1946) | fn preflight6() { function preflight7 (line 1956) | fn preflight7() { function preflight8 (line 1965) | fn preflight8() { function preflight9 (line 1976) | fn preflight9() { function oneshot_data_waiting (line 1988) | fn oneshot_data_waiting() { function stream_data_waiting (line 2007) | fn stream_data_waiting() { function shared_data_waiting (line 2030) | fn shared_data_waiting() { function sync1 (line 2052) | fn sync1() { function sync2 (line 2061) | fn sync2() { function sync3 (line 2076) | fn sync3() { FILE: crossbeam-channel/tests/never.rs function ms (line 10) | fn ms(ms: u64) -> Duration { function smoke (line 15) | fn smoke() { function optional (line 23) | fn optional() { function tick_n (line 42) | fn tick_n() { function capacity (line 61) | fn capacity() { function len_empty_full (line 67) | fn len_empty_full() { function try_recv (line 75) | fn try_recv() { function recv_timeout (line 85) | fn recv_timeout() { FILE: crossbeam-channel/tests/ready.rs function ms (line 15) | fn ms(ms: u64) -> Duration { function smoke1 (line 20) | fn smoke1() { function smoke2 (line 42) | fn smoke2() { function disconnected (line 62) | fn disconnected() { function default (line 110) | fn default() { function timeout (line 147) | fn timeout() { function default_when_disconnected (line 194) | fn default_when_disconnected() { function default_only (line 235) | fn default_only() { function unblocks (line 252) | fn unblocks() { function both_ready (line 295) | fn both_ready() { function cloning1 (line 321) | fn cloning1() { function cloning2 (line 352) | fn cloning2() { function preflight1 (line 377) | fn preflight1() { function preflight2 (line 390) | fn preflight2() { function preflight3 (line 407) | fn preflight3() { function duplicate_operations (line 423) | fn duplicate_operations() { function nesting (line 456) | fn nesting() { function stress_recv (line 497) | fn stress_recv() { function stress_send (line 534) | fn stress_send() { function stress_mixed (line 568) | fn stress_mixed() { function stress_timeout_two_threads (line 602) | fn stress_timeout_two_threads() { function send_recv_same_channel (line 654) | fn send_recv_same_channel() { function channel_through_channel (line 673) | fn channel_through_channel() { function fairness1 (line 729) | fn fairness1() { function fairness2 (line 774) | fn fairness2() { FILE: crossbeam-channel/tests/same_channel.rs function ms (line 7) | fn ms(ms: u64) -> Duration { function after_same_channel (line 12) | fn after_same_channel() { function array_same_channel (line 28) | fn array_same_channel() { function list_same_channel (line 45) | fn list_same_channel() { function never_same_channel (line 62) | fn never_same_channel() { function tick_same_channel (line 75) | fn tick_same_channel() { function zero_same_channel (line 91) | fn zero_same_channel() { function different_flavors_same_channel (line 108) | fn different_flavors_same_channel() { FILE: crossbeam-channel/tests/select.rs function ms (line 13) | fn ms(ms: u64) -> Duration { function smoke1 (line 18) | fn smoke1() { function smoke2 (line 48) | fn smoke2() { function disconnected (line 75) | fn disconnected() { function default (line 137) | fn default() { function timeout (line 195) | fn timeout() { function default_when_disconnected (line 263) | fn default_when_disconnected() { function default_only (line 319) | fn default_only() { function unblocks (line 338) | fn unblocks() { function both_ready (line 386) | fn both_ready() { function loop_try (line 413) | fn loop_try() { function cloning1 (line 513) | fn cloning1() { function cloning2 (line 545) | fn cloning2() { function preflight1 (line 571) | fn preflight1() { function preflight2 (line 585) | fn preflight2() { function preflight3 (line 603) | fn preflight3() { function duplicate_operations (line 620) | fn duplicate_operations() { function nesting (line 654) | fn nesting() { function stress_recv (line 699) | fn stress_recv() { function stress_send (line 737) | fn stress_send() { function stress_mixed (line 772) | fn stress_mixed() { function stress_timeout_two_threads (line 807) | fn stress_timeout_two_threads() { function send_recv_same_channel (line 865) | fn send_recv_same_channel() { function matching (line 896) | fn matching() { function matching_with_leftover (line 922) | fn matching_with_leftover() { function channel_through_channel (line 949) | fn channel_through_channel() { function linearizable_try (line 1007) | fn linearizable_try() { function linearizable_timeout (line 1059) | fn linearizable_timeout() { function fairness1 (line 1111) | fn fairness1() { function fairness2 (line 1157) | fn fairness2() { function sync_and_clone (line 1216) | fn sync_and_clone() { function send_and_clone (line 1245) | fn send_and_clone() { function reuse (line 1273) | fn reuse() { function issue_1096 (line 1310) | fn issue_1096() { FILE: crossbeam-channel/tests/select_macro.rs function ms (line 20) | fn ms(ms: u64) -> Duration { function smoke1 (line 25) | fn smoke1() { function smoke2 (line 45) | fn smoke2() { function disconnected (line 64) | fn disconnected() { function default (line 106) | fn default() { function timeout (line 142) | fn timeout() { function default_when_disconnected (line 187) | fn default_when_disconnected() { function default_only (line 219) | fn default_only() { function unblocks (line 237) | fn unblocks() { function both_ready (line 271) | fn both_ready() { function loop_try (line 293) | fn loop_try() { function cloning1 (line 347) | fn cloning1() { function cloning2 (line 374) | fn cloning2() { function preflight1 (line 395) | fn preflight1() { function preflight2 (line 405) | fn preflight2() { function preflight3 (line 418) | fn preflight3() { function duplicate_operations (line 431) | fn duplicate_operations() { function nesting (line 446) | fn nesting() { function panic_sender (line 471) | fn panic_sender() { function panic_receiver (line 486) | fn panic_receiver() { function stress_recv (line 497) | fn stress_recv() { function stress_send (line 530) | fn stress_send() { function stress_mixed (line 560) | fn stress_mixed() { function stress_timeout_two_threads (line 590) | fn stress_timeout_two_threads() { function send_recv_same_channel (line 633) | fn send_recv_same_channel() { function matching (line 650) | fn matching() { function matching_with_leftover (line 671) | fn matching_with_leftover() { function channel_through_channel (line 693) | fn channel_through_channel() { function linearizable_default (line 738) | fn linearizable_default() { function linearizable_timeout (line 782) | fn linearizable_timeout() { function fairness1 (line 826) | fn fairness1() { function fairness2 (line 851) | fn fairness2() { function fairness_recv (line 888) | fn fairness_recv() { function fairness_send (line 910) | fn fairness_send() { function unfairness (line 927) | fn unfairness() { function unfairness_timeout (line 961) | fn unfairness_timeout() { function unfairness_try (line 997) | fn unfairness_try() { function references (line 1034) | fn references() { function case_blocks (line 1056) | fn case_blocks() { function move_handles (line 1082) | fn move_handles() { function infer_types (line 1091) | fn infer_types() { function default_syntax (line 1107) | fn default_syntax() { function same_variable_name (line 1127) | fn same_variable_name() { function handles_on_heap (line 1135) | fn handles_on_heap() { function once_blocks (line 1150) | fn once_blocks() { function once_receiver (line 1186) | fn once_receiver() { function once_sender (line 1201) | fn once_sender() { function parse_nesting (line 1216) | fn parse_nesting() { function evaluate (line 1240) | fn evaluate() { function deref (line 1264) | fn deref() { function result_types (line 1297) | fn result_types() { function try_recv (line 1332) | fn try_recv() { function recv (line 1363) | fn recv() { function recv_timeout (line 1400) | fn recv_timeout() { function try_send (line 1429) | fn try_send() { function send (line 1460) | fn send() { function send_timeout (line 1494) | fn send_timeout() { function disconnect_wakes_sender (line 1523) | fn disconnect_wakes_sender() { function disconnect_wakes_receiver (line 1541) | fn disconnect_wakes_receiver() { function trailing_comma (line 1559) | fn trailing_comma() { FILE: crossbeam-channel/tests/thread_locals.rs function ms (line 10) | fn ms(ms: u64) -> Duration { function use_while_exiting (line 16) | fn use_while_exiting() { FILE: crossbeam-channel/tests/tick.rs function ms (line 14) | fn ms(ms: u64) -> Duration { function fire (line 19) | fn fire() { function intervals (line 49) | fn intervals() { function capacity (line 71) | fn capacity() { function len_empty_full (line 81) | fn len_empty_full() { function try_recv (line 103) | fn try_recv() { function recv (line 121) | fn recv() { function recv_timeout (line 139) | fn recv_timeout() { function recv_two (line 163) | fn recv_two() { function recv_race (line 190) | fn recv_race() { function stress_default (line 203) | fn stress_default() { function select (line 223) | fn select() { function ready (line 267) | fn ready() { function fairness (line 315) | fn fairness() { function fairness_duplicates (line 338) | fn fairness_duplicates() { FILE: crossbeam-channel/tests/zero.rs function ms (line 16) | fn ms(ms: u64) -> Duration { function smoke (line 21) | fn smoke() { function capacity (line 28) | fn capacity() { function len_empty_full (line 35) | fn len_empty_full() { function try_recv (line 60) | fn try_recv() { function recv (line 80) | fn recv() { function recv_timeout (line 103) | fn recv_timeout() { function try_send (line 124) | fn try_send() { function send (line 144) | fn send() { function send_timeout (line 166) | fn send_timeout() { function len (line 190) | fn len() { function disconnect_wakes_sender (line 220) | fn disconnect_wakes_sender() { function disconnect_wakes_receiver (line 236) | fn disconnect_wakes_receiver() { function spsc (line 252) | fn spsc() { function mpmc (line 274) | fn mpmc() { function stress_oneshot (line 306) | fn stress_oneshot() { function stress_iter (line 321) | fn stress_iter() { function stress_timeout_two_threads (line 351) | fn stress_timeout_two_threads() { function drops (line 388) | fn drops() { function fairness (line 434) | fn fairness() { function fairness_duplicates (line 465) | fn fairness_duplicates() { function recv_in_send (line 501) | fn recv_in_send() { function channel_through_channel (line 523) | fn channel_through_channel() { FILE: crossbeam-deque/build.rs function main (line 5) | fn main() { FILE: crossbeam-deque/src/deque.rs constant MIN_CAP (line 18) | const MIN_CAP: usize = 64; constant MAX_BATCH (line 20) | const MAX_BATCH: usize = 32; constant FLUSH_THRESHOLD_BYTES (line 23) | const FLUSH_THRESHOLD_BYTES: usize = 1 << 10; type Buffer (line 29) | struct Buffer { function alloc (line 41) | fn alloc(cap: usize) -> Self { function dealloc (line 55) | unsafe fn dealloc(self) { function at (line 65) | unsafe fn at(&self, index: isize) -> *mut T { function write (line 78) | unsafe fn write(&self, index: isize, task: MaybeUninit) { function read (line 88) | unsafe fn read(&self, index: isize) -> MaybeUninit { method clone (line 94) | fn clone(&self) -> Self { type Inner (line 114) | struct Inner { method drop (line 126) | fn drop(&mut self) { type Flavor (line 149) | enum Flavor { type Worker (line 197) | pub struct Worker { function new_fifo (line 225) | pub fn new_fifo() -> Self { function new_lifo (line 253) | pub fn new_lifo() -> Self { function stealer (line 282) | pub fn stealer(&self) -> Stealer { function resize (line 291) | unsafe fn resize(&self, new_cap: usize) { function reserve (line 326) | fn reserve(&self, reserve_cap: usize) { function is_empty (line 363) | pub fn is_empty(&self) -> bool { function len (line 382) | pub fn len(&self) -> usize { function push (line 399) | pub fn push(&self, task: T) { function pop (line 450) | pub fn pop(&self) -> Option { function fmt (line 549) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Stealer (line 574) | pub struct Stealer { function is_empty (line 598) | pub fn is_empty(&self) -> bool { function len (line 619) | pub fn len(&self) -> usize { function steal (line 641) | pub fn steal(&self) -> Steal { function steal_batch (line 708) | pub fn steal_batch(&self, dest: &Worker) -> Steal<()> { function steal_batch_with_limit (line 746) | pub fn steal_batch_with_limit(&self, dest: &Worker, limit: usize) -> ... function steal_batch_and_pop (line 949) | pub fn steal_batch_and_pop(&self, dest: &Worker) -> Steal { function steal_batch_with_limit_and_pop (line 989) | pub fn steal_batch_with_limit_and_pop(&self, dest: &Worker, limit: us... method clone (line 1182) | fn clone(&self) -> Self { function fmt (line 1191) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { constant WRITE (line 1200) | const WRITE: usize = 1; constant READ (line 1201) | const READ: usize = 2; constant DESTROY (line 1202) | const DESTROY: usize = 4; constant LAP (line 1205) | const LAP: usize = 64; constant BLOCK_CAP (line 1207) | const BLOCK_CAP: usize = LAP - 1; constant SHIFT (line 1209) | const SHIFT: usize = 1; constant HAS_NEXT (line 1211) | const HAS_NEXT: usize = 1; type Slot (line 1214) | struct Slot { function wait_write (line 1224) | fn wait_write(&self) { type Block (line 1235) | struct Block { constant LAYOUT (line 1244) | const LAYOUT: Layout = { function new (line 1254) | fn new() -> Box { function wait_next (line 1272) | fn wait_next(&self) -> *mut Self { function destroy (line 1284) | unsafe fn destroy(this: *mut Self, count: usize) { type Position (line 1305) | struct Position { type Injector (line 1332) | pub struct Injector { method default (line 1347) | fn default() -> Self { function new (line 1373) | pub fn new() -> Self { function push (line 1388) | pub fn push(&self, task: T) { function steal (line 1464) | pub fn steal(&self) -> Steal { function steal_batch (line 1564) | pub fn steal_batch(&self, dest: &Worker) -> Steal<()> { function steal_batch_with_limit (line 1601) | pub fn steal_batch_with_limit(&self, dest: &Worker, limit: usize) -> ... function steal_batch_and_pop (line 1766) | pub fn steal_batch_and_pop(&self, dest: &Worker) -> Steal { function steal_batch_with_limit_and_pop (line 1805) | pub fn steal_batch_with_limit_and_pop(&self, dest: &Worker, limit: us... function is_empty (line 1967) | pub fn is_empty(&self) -> bool { function len (line 1988) | pub fn len(&self) -> usize { method drop (line 2025) | fn drop(&mut self) { function fmt (line 2060) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Steal (line 2085) | pub enum Steal { function is_empty (line 2109) | pub fn is_empty(&self) -> bool { function is_success (line 2125) | pub fn is_success(&self) -> bool { function is_retry (line 2141) | pub fn is_retry(&self) -> bool { function success (line 2157) | pub fn success(self) -> Option { function or_else (line 2185) | pub fn or_else(self, f: F) -> Self function fmt (line 2204) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function from_iter (line 2218) | fn from_iter(iter: I) -> Self FILE: crossbeam-deque/tests/fifo.rs function smoke (line 13) | fn smoke() { function is_empty (line 49) | fn is_empty() { function spsc (line 75) | fn spsc() { function stampede (line 103) | fn stampede() { function stress (line 144) | fn stress() { function no_starvation (line 204) | fn no_starvation() { function destructors (line 263) | fn destructors() { FILE: crossbeam-deque/tests/injector.rs function busy_retry (line 13) | fn busy_retry(mut f: impl FnMut() -> Steal) -> Steal { function smoke (line 23) | fn smoke() { function is_empty (line 39) | fn is_empty() { function spsc (line 60) | fn spsc() { function mpmc (line 89) | fn mpmc() { function stampede (line 128) | fn stampede() { function stress (line 169) | fn stress() { function no_starvation (line 233) | fn no_starvation() { function destructors (line 292) | fn destructors() { function stack_overflow (line 375) | fn stack_overflow() { FILE: crossbeam-deque/tests/lifo.rs function smoke (line 13) | fn smoke() { function is_empty (line 49) | fn is_empty() { function spsc (line 75) | fn spsc() { function stampede (line 105) | fn stampede() { function stress (line 146) | fn stress() { function no_starvation (line 206) | fn no_starvation() { function destructors (line 265) | fn destructors() { FILE: crossbeam-deque/tests/steal.rs function busy_retry (line 7) | fn busy_retry(mut f: impl FnMut() -> Steal) -> Steal { function steal_fifo (line 17) | fn steal_fifo() { function steal_lifo (line 30) | fn steal_lifo() { function steal_injector (line 43) | fn steal_injector() { function steal_batch_fifo_fifo (line 55) | fn steal_batch_fifo_fifo() { function steal_batch_lifo_lifo (line 70) | fn steal_batch_lifo_lifo() { function steal_batch_fifo_lifo (line 85) | fn steal_batch_fifo_lifo() { function steal_batch_lifo_fifo (line 100) | fn steal_batch_lifo_fifo() { function steal_batch_injector_fifo (line 115) | fn steal_batch_injector_fifo() { function steal_batch_injector_lifo (line 128) | fn steal_batch_injector_lifo() { function steal_batch_and_pop_fifo_fifo (line 141) | fn steal_batch_and_pop_fifo_fifo() { function steal_batch_and_pop_lifo_lifo (line 156) | fn steal_batch_and_pop_lifo_lifo() { function steal_batch_and_pop_fifo_lifo (line 171) | fn steal_batch_and_pop_fifo_lifo() { function steal_batch_and_pop_lifo_fifo (line 186) | fn steal_batch_and_pop_lifo_fifo() { function steal_batch_and_pop_injector_fifo (line 201) | fn steal_batch_and_pop_injector_fifo() { function steal_batch_and_pop_injector_lifo (line 214) | fn steal_batch_and_pop_injector_lifo() { FILE: crossbeam-epoch/benches/defer.rs function single_alloc_defer_free (line 10) | fn single_alloc_defer_free(b: &mut Bencher) { function single_defer (line 21) | fn single_defer(b: &mut Bencher) { function multi_alloc_defer_free (line 29) | fn multi_alloc_defer_free(b: &mut Bencher) { function multi_defer (line 52) | fn multi_defer(b: &mut Bencher) { FILE: crossbeam-epoch/benches/flush.rs function single_flush (line 12) | fn single_flush(b: &mut Bencher) { function multi_flush (line 35) | fn multi_flush(b: &mut Bencher) { FILE: crossbeam-epoch/benches/pin.rs function single_pin (line 10) | fn single_pin(b: &mut Bencher) { function multi_pin (line 15) | fn multi_pin(b: &mut Bencher) { FILE: crossbeam-epoch/build.rs function main (line 5) | fn main() { FILE: crossbeam-epoch/examples/sanitize.rs function worker (line 15) | fn worker(a: Arc>, handle: LocalHandle) -> usize { function main (line 49) | fn main() { FILE: crossbeam-epoch/src/atomic.rs type CompareExchangeValue (line 23) | pub struct CompareExchangeValue<'g, T: ?Sized + Pointable> { function fmt (line 32) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type CompareExchangeError (line 41) | pub struct CompareExchangeError<'g, T: ?Sized + Pointable, P: Pointer> { function fmt (line 50) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function low_bits (line 60) | fn low_bits() -> usize { function ensure_aligned (line 66) | fn ensure_aligned(raw: *mut ()) { function compose_tag (line 74) | fn compose_tag(ptr: *mut (), tag: usize) -> *mut ... function decompose_tag (line 80) | fn decompose_tag(ptr: *mut ()) -> (*mut (), usize) { function map_addr (line 90) | fn map_addr(ptr: *mut T, f: impl FnOnce(usize) -> usize) -> *mut T { type Pointable (line 117) | pub trait Pointable { constant ALIGN (line 119) | const ALIGN: usize; method init (line 129) | unsafe fn init(init: Self::Init) -> *mut (); method as_ptr (line 138) | unsafe fn as_ptr(ptr: *mut ()) -> *const Self; method as_mut_ptr (line 148) | unsafe fn as_mut_ptr(ptr: *mut ()) -> *mut Self; method drop (line 158) | unsafe fn drop(ptr: *mut ()); constant ALIGN (line 162) | const ALIGN: usize = mem::align_of::(); type Init (line 164) | type Init = T; method init (line 166) | unsafe fn init(init: Self::Init) -> *mut () { method as_ptr (line 170) | unsafe fn as_ptr(ptr: *mut ()) -> *const Self { method as_mut_ptr (line 174) | unsafe fn as_mut_ptr(ptr: *mut ()) -> *mut Self { method drop (line 178) | unsafe fn drop(ptr: *mut ()) { constant ALIGN (line 220) | const ALIGN: usize = mem::align_of::>(); type Init (line 222) | type Init = usize; method init (line 225) | unsafe fn init(len: Self::Init) -> *mut () { method as_ptr (line 237) | unsafe fn as_ptr(ptr: *mut ()) -> *const Self { method as_mut_ptr (line 247) | unsafe fn as_mut_ptr(ptr: *mut ()) -> *mut Self { method drop (line 256) | unsafe fn drop(ptr: *mut ()) { type Array (line 203) | struct Array { function layout (line 210) | fn layout(len: usize) -> Layout { type Atomic (line 274) | pub struct Atomic { function new (line 293) | pub fn new(init: T) -> Self { function init (line 309) | pub fn init(init: T::Init) -> Self { function from_ptr (line 314) | fn from_ptr(data: *mut ()) -> Self { function load (line 356) | pub fn load<'g>(&self, order: Ordering, _: &'g Guard) -> Shared<'g, T> { function load_consume (line 382) | pub fn load_consume<'g>(&self, _: &'g Guard) -> Shared<'g, T> { function store (line 403) | pub fn store>(&self, new: P, order: Ordering) { function swap (line 424) | pub fn swap<'g, P: Pointer>(&self, new: P, order: Ordering, _: &'g Gu... function compare_exchange (line 460) | pub fn compare_exchange<'g, P>( function compare_exchange_weak (line 544) | pub fn compare_exchange_weak<'g, P>( function fetch_update (line 612) | pub fn fetch_update<'g, F>( function fetch_and (line 651) | pub fn fetch_and<'g>(&self, val: usize, order: Ordering, _: &'g Guard) -... function fetch_or (line 689) | pub fn fetch_or<'g>(&self, val: usize, order: Ordering, _: &'g Guard) ->... function fetch_xor (line 727) | pub fn fetch_xor<'g>(&self, val: usize, order: Ordering, _: &'g Guard) -... function into_owned (line 780) | pub unsafe fn into_owned(self) -> Owned { function try_into_owned (line 817) | pub unsafe fn try_into_owned(self) -> Option> { function fmt (line 828) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function fmt (line 840) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method clone (line 852) | fn clone(&self) -> Self { method default (line 859) | fn default() -> Self { function from (line 875) | fn from(owned: Owned) -> Self { function from (line 883) | fn from(b: Box) -> Self { function from (line 889) | fn from(t: T) -> Self { function from (line 904) | fn from(ptr: Shared<'g, T>) -> Self { function from (line 920) | fn from(raw: *const T) -> Self { type Pointer (line 928) | pub trait Pointer: crate::sealed::Sealed { method into_ptr (line 930) | fn into_ptr(self) -> *mut (); method from_ptr (line 938) | unsafe fn from_ptr(data: *mut ()) -> Self; type Owned (line 947) | pub struct Owned { function into_ptr (line 955) | fn into_ptr(self) -> *mut () { function from_ptr (line 967) | unsafe fn from_ptr(data: *mut ()) -> Self { function from_raw (line 999) | pub unsafe fn from_raw(raw: *mut T) -> Self { function into_box (line 1016) | pub fn into_box(self) -> Box { function new (line 1031) | pub fn new(init: T) -> Self { function init (line 1046) | pub fn init(init: T::Init) -> Self { function into_shared (line 1063) | pub fn into_shared<'g>(self, _: &'g Guard) -> Shared<'g, T> { function tag (line 1076) | pub fn tag(&self) -> usize { function with_tag (line 1094) | pub fn with_tag(self, tag: usize) -> Self { method drop (line 1101) | fn drop(&mut self) { function fmt (line 1110) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method clone (line 1121) | fn clone(&self) -> Self { type Target (line 1127) | type Target = T; method deref (line 1129) | fn deref(&self) -> &T { method deref_mut (line 1136) | fn deref_mut(&mut self) -> &mut T { function from (line 1143) | fn from(t: T) -> Self { function from (line 1162) | fn from(b: Box) -> Self { function borrow (line 1168) | fn borrow(&self) -> &T { function borrow_mut (line 1174) | fn borrow_mut(&mut self) -> &mut T { function as_ref (line 1180) | fn as_ref(&self) -> &T { function as_mut (line 1186) | fn as_mut(&mut self) -> &mut T { type Shared (line 1197) | pub struct Shared<'g, T: 'g + ?Sized + Pointable> { method clone (line 1203) | fn clone(&self) -> Self { function into_ptr (line 1213) | fn into_ptr(self) -> *mut () { function from_ptr (line 1218) | unsafe fn from_ptr(data: *mut ()) -> Self { function as_raw (line 1244) | pub fn as_raw(&self) -> *const T { function null (line 1261) | pub const fn null() -> Self { function is_null (line 1283) | pub fn is_null(&self) -> bool { function as_ptr (line 1288) | pub(crate) unsafe fn as_ptr(&self) -> *const T { function as_mut_ptr (line 1293) | pub(crate) unsafe fn as_mut_ptr(&self) -> *mut T { function deref (line 1330) | pub unsafe fn deref(&self) -> &'g T { function deref_mut (line 1371) | pub unsafe fn deref_mut(&mut self) -> &'g mut T { function as_ref (line 1407) | pub unsafe fn as_ref(&self) -> Option<&'g T> { function into_owned (line 1440) | pub unsafe fn into_owned(self) -> Owned { function try_into_owned (line 1467) | pub unsafe fn try_into_owned(self) -> Option> { function tag (line 1489) | pub fn tag(&self) -> usize { function with_tag (line 1513) | pub fn with_tag(&self, tag: usize) -> Self { function from (line 1534) | fn from(raw: *const T) -> Self { method eq (line 1542) | fn eq(&self, other: &Self) -> bool { method partial_cmp (line 1550) | fn partial_cmp(&self, other: &Self) -> Option { method cmp (line 1556) | fn cmp(&self, other: &Self) -> cmp::Ordering { function fmt (line 1562) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function fmt (line 1573) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method default (line 1579) | fn default() -> Self { function valid_tag_i8 (line 1597) | fn valid_tag_i8() { function valid_tag_i64 (line 1602) | fn valid_tag_i64() { function const_null (line 1607) | fn const_null() { function array_init (line 1616) | fn array_init() { function compare_exchange_success (line 1623) | fn compare_exchange_success() { function compare_exchange_failure (line 1655) | fn compare_exchange_failure() { function compare_exchange_weak_success (line 1693) | fn compare_exchange_weak_success() { FILE: crossbeam-epoch/src/collector.rs type Collector (line 24) | pub struct Collector { method new (line 42) | pub fn new() -> Self { method register (line 47) | pub fn register(&self) -> LocalHandle { method fmt (line 62) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method default (line 33) | fn default() -> Self { method clone (line 54) | fn clone(&self) -> Self { method eq (line 69) | fn eq(&self, rhs: &Self) -> bool { type LocalHandle (line 76) | pub struct LocalHandle { method pin (line 83) | pub fn pin(&self) -> Guard { method is_pinned (line 89) | pub fn is_pinned(&self) -> bool { method collector (line 95) | pub fn collector(&self) -> &Collector { method fmt (line 110) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method drop (line 102) | fn drop(&mut self) { constant NUM_THREADS (line 132) | const NUM_THREADS: usize = 8; function pin_reentrant (line 135) | fn pin_reentrant() { function flush_local_bag (line 154) | fn flush_local_bag() { function garbage_buffering (line 175) | fn garbage_buffering() { function pin_holds_advance (line 191) | fn pin_holds_advance() { function incremental (line 218) | fn incremental() { function buffering (line 251) | fn buffering() { function count_drops (line 285) | fn count_drops() { function count_destroy (line 318) | fn count_destroy() { function drop_array (line 346) | fn drop_array() { function destroy_array (line 384) | fn destroy_array() { function stress (line 417) | fn stress() { FILE: crossbeam-epoch/src/default.rs function collector (line 16) | fn collector() -> &'static Collector { function pin (line 42) | pub fn pin() -> Guard { function is_pinned (line 48) | pub fn is_pinned() -> bool { function default_collector (line 53) | pub fn default_collector() -> &'static Collector { function with_handle (line 58) | fn with_handle(mut f: F) -> R function pin_while_exiting (line 77) | fn pin_while_exiting() { FILE: crossbeam-epoch/src/deferred.rs constant DATA_WORDS (line 13) | const DATA_WORDS: usize = 3; type Data (line 16) | type Data = [usize; DATA_WORDS]; type Deferred (line 21) | pub(crate) struct Deferred { method fmt (line 28) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> Result<(), fmt::Error> { constant NO_OP (line 34) | pub(crate) const NO_OP: Self = { method new (line 44) | pub(crate) fn new(f: F) -> Self { method call (line 86) | pub(crate) fn call(mut self) { function on_stack (line 104) | fn on_stack() { function on_heap (line 119) | fn on_heap() { function string (line 134) | fn string() { function boxed_slice_i32 (line 141) | fn boxed_slice_i32() { function long_slice_usize (line 148) | fn long_slice_usize() { FILE: crossbeam-epoch/src/epoch.rs type AtomicEpochRepr (line 16) | type AtomicEpochRepr = crate::primitive::sync::atomic::AtomicU64; type AtomicEpochRepr (line 18) | type AtomicEpochRepr = crate::primitive::sync::atomic::AtomicUsize; type EpochRepr (line 20) | type EpochRepr = u64; type EpochRepr (line 22) | type EpochRepr = usize; type EpochReprSigned (line 24) | type EpochReprSigned = i64; type EpochReprSigned (line 26) | type EpochReprSigned = isize; type Epoch (line 33) | pub(crate) struct Epoch { method starting (line 41) | pub(crate) fn starting() -> Self { method wrapping_sub (line 49) | pub(crate) fn wrapping_sub(self, rhs: Self) -> EpochReprSigned { method is_pinned (line 58) | pub(crate) fn is_pinned(self) -> bool { method pinned (line 64) | pub(crate) fn pinned(self) -> Self { method unpinned (line 72) | pub(crate) fn unpinned(self) -> Self { method successor (line 82) | pub(crate) fn successor(self) -> Self { type AtomicEpoch (line 91) | pub(crate) struct AtomicEpoch { method new (line 100) | pub(crate) fn new(epoch: Epoch) -> Self { method load (line 107) | pub(crate) fn load(&self, ord: Ordering) -> Epoch { method store (line 115) | pub(crate) fn store(&self, epoch: Epoch, ord: Ordering) { method compare_exchange (line 133) | pub(crate) fn compare_exchange( FILE: crossbeam-epoch/src/guard.rs type Guard (line 70) | pub struct Guard { method defer (line 90) | pub fn defer(&self, f: F) method defer_unchecked (line 189) | pub unsafe fn defer_unchecked(&self, f: F) method defer_destroy (line 271) | pub unsafe fn defer_destroy(&self, ptr: Shared<... method flush (line 295) | pub fn flush(&self) { method repin (line 329) | pub fn repin(&mut self) { method repin_after (line 366) | pub fn repin_after(&mut self, f: F) -> R method collector (line 411) | pub fn collector(&self) -> Option<&Collector> { method fmt (line 426) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method drop (line 418) | fn drop(&mut self) { function unprotected (line 518) | pub unsafe fn unprotected() -> &'static Guard { FILE: crossbeam-epoch/src/internal.rs constant MAX_OBJECTS (line 66) | const MAX_OBJECTS: usize = 64; constant MAX_OBJECTS (line 69) | const MAX_OBJECTS: usize = 4; type Bag (line 72) | pub(crate) struct Bag { method new (line 83) | pub(crate) fn new() -> Self { method is_empty (line 88) | pub(crate) fn is_empty(&self) -> bool { method try_push (line 100) | pub(crate) unsafe fn try_push(&mut self, deferred: Deferred) -> Result... method seal (line 111) | fn seal(self, epoch: Epoch) -> SealedBag { method fmt (line 138) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method default (line 117) | fn default() -> Self { method drop (line 126) | fn drop(&mut self) { type SealedBag (line 147) | struct SealedBag { method is_expired (line 157) | fn is_expired(&self, global_epoch: Epoch) -> bool { type Global (line 165) | pub(crate) struct Global { constant COLLECT_STEPS (line 178) | const COLLECT_STEPS: usize = 8; method new (line 182) | pub(crate) fn new() -> Self { method push_bag (line 191) | pub(crate) fn push_bag(&self, bag: &mut Bag, guard: &Guard) { method collect (line 208) | pub(crate) fn collect(&self, guard: &Guard) { method try_advance (line 237) | pub(crate) fn try_advance(&self, guard: &Guard) -> Epoch { type Local (line 293) | pub(crate) struct Local { constant PINNINGS_BETWEEN_COLLECT (line 335) | const PINNINGS_BETWEEN_COLLECT: usize = 128; method register (line 338) | pub(crate) fn register(collector: &Collector) -> LocalHandle { method global (line 361) | pub(crate) fn global(&self) -> &Global { method collector (line 367) | pub(crate) fn collector(&self) -> &Collector { method is_pinned (line 373) | pub(crate) fn is_pinned(&self) -> bool { method defer (line 382) | pub(crate) unsafe fn defer(&self, mut deferred: Deferred, guard: &Guar... method flush (line 391) | pub(crate) fn flush(&self, guard: &Guard) { method pin (line 403) | pub(crate) fn pin(&self) -> Guard { method unpin (line 466) | pub(crate) fn unpin(&self) { method repin (line 483) | pub(crate) fn repin(&self) { method acquire_handle (line 506) | pub(crate) fn acquire_handle(&self) { method release_handle (line 514) | pub(crate) unsafe fn release_handle(this: *const Self) { method finalize (line 531) | unsafe fn finalize(this: *const Self) { method entry_of (line 573) | fn entry_of(local: *const Self) -> *const Entry { method element_of (line 578) | unsafe fn element_of(entry: *const Entry) -> *const Self { method finalize (line 583) | unsafe fn finalize(entry: *const Entry, guard: &Guard) { function local_size (line 324) | fn local_size() { function check_defer (line 600) | fn check_defer() { function check_bag (line 613) | fn check_bag() { FILE: crossbeam-epoch/src/lib.rs type UnsafeCell (line 99) | pub(crate) struct UnsafeCell(::core::cell::UnsafeCell); function new (line 108) | pub(crate) const fn new(data: T) -> Self { function with (line 113) | pub(crate) fn with(&self, f: impl FnOnce(*const T) -> R) -> R { function with_mut (line 118) | pub(crate) fn with_mut(&self, f: impl FnOnce(*mut T) -> R) -> R { type Sealed (line 181) | pub trait Sealed {} FILE: crossbeam-epoch/src/sync/list.rs type Entry (line 19) | pub(crate) struct Entry { method delete (line 151) | pub(crate) unsafe fn delete(&self, guard: &Guard) { method entry_of (line 316) | fn entry_of(entry: *const Self) -> *const Entry { method element_of (line 320) | unsafe fn element_of(entry: *const Entry) -> *const Self { method finalize (line 324) | unsafe fn finalize(entry: *const Entry, guard: &Guard) { type IsElement (line 70) | pub(crate) trait IsElement { method entry_of (line 72) | fn entry_of(_: *const T) -> *const Entry; method element_of (line 86) | unsafe fn element_of(_: *const Entry) -> *const T; method finalize (line 94) | unsafe fn finalize(_: *const Entry, _: &Guard); type List (line 99) | pub(crate) struct List = T> { type Iter (line 108) | pub(crate) struct Iter<'g, T, C: IsElement> { type IterError (line 128) | pub(crate) enum IterError { method default (line 136) | fn default() -> Self { function new (line 158) | pub(crate) fn new() -> Self { function insert (line 175) | pub(crate) unsafe fn insert<'g>(&'g self, container: Shared<'g, T>, guar... function iter (line 210) | pub(crate) fn iter<'g>(&'g self, guard: &'g Guard) -> Iter<'g, T, C> { method drop (line 222) | fn drop(&mut self) { type Item (line 239) | type Item = Result<&'g T, IterError>; method next (line 241) | fn next(&mut self) -> Option { function insert (line 332) | fn insert() { function delete (line 371) | fn delete() { constant THREADS (line 406) | const THREADS: usize = 8; constant ITERS (line 407) | const ITERS: usize = 512; function insert_delete_multi (line 411) | fn insert_delete_multi() { function iter_multi (line 453) | fn iter_multi() { FILE: crossbeam-epoch/src/sync/queue.rs type Queue (line 24) | pub(crate) struct Queue { type Node (line 29) | struct Node { function new (line 47) | pub(crate) fn new() -> Self { function push_internal (line 68) | fn push_internal( function push (line 100) | pub(crate) fn push(&self, t: T, guard: &Guard) { function pop_internal (line 120) | fn pop_internal(&self, guard: &Guard) -> Result, ()> { function pop_if_internal (line 148) | fn pop_if_internal(&self, condition: F, guard: &Guard) -> Result Option { function try_pop_if (line 192) | pub(crate) fn try_pop_if(&self, condition: F, guard: &Guard) -> Optio... method drop (line 206) | fn drop(&mut self) { type Queue (line 233) | struct Queue { function new (line 238) | pub(crate) fn new() -> Self { function push (line 244) | pub(crate) fn push(&self, t: T) { function is_empty (line 249) | pub(crate) fn is_empty(&self) -> bool { function try_pop (line 256) | pub(crate) fn try_pop(&self) -> Option { function pop (line 261) | pub(crate) fn pop(&self) -> T { constant CONC_COUNT (line 271) | const CONC_COUNT: i64 = if cfg!(miri) { 1000 } else { 1000000 }; function push_try_pop_1 (line 274) | fn push_try_pop_1() { function push_try_pop_2 (line 284) | fn push_try_pop_2() { function push_try_pop_many_seq (line 296) | fn push_try_pop_many_seq() { function push_pop_1 (line 310) | fn push_pop_1() { function push_pop_2 (line 320) | fn push_pop_2() { function push_pop_many_seq (line 329) | fn push_pop_many_seq() { function push_try_pop_many_spsc (line 343) | fn push_try_pop_many_spsc() { function push_try_pop_many_spmc (line 367) | fn push_try_pop_many_spmc() { function push_try_pop_many_mpmc (line 400) | fn push_try_pop_many_mpmc() { function push_pop_many_spsc (line 446) | fn push_pop_many_spsc() { function is_empty_dont_pop (line 467) | fn is_empty_dont_pop() { FILE: crossbeam-epoch/tests/loom.rs function it_works (line 18) | fn it_works() { function treiber_stack (line 52) | fn treiber_stack() { FILE: crossbeam-queue/src/array_queue.rs type Slot (line 18) | struct Slot { type ArrayQueue (line 52) | pub struct ArrayQueue { function new (line 96) | pub fn new(cap: usize) -> Self { function push_or_else (line 127) | fn push_or_else(&self, mut value: T, f: F) -> Result<(), T> function push (line 203) | pub fn push(&self, value: T) -> Result<(), T> { function push_mut (line 231) | pub fn push_mut(&mut self, value: T) -> Result<(), T> { function force_push (line 275) | pub fn force_push(&self, value: T) -> Option { function pop (line 318) | pub fn pop(&self) -> Option { function pop_mut (line 397) | pub fn pop_mut(&mut self) -> Option { function capacity (line 441) | pub fn capacity(&self) -> usize { function is_empty (line 458) | pub fn is_empty(&self) -> bool { function is_full (line 483) | pub fn is_full(&self) -> bool { function len (line 510) | pub fn len(&self) -> usize { method drop (line 536) | fn drop(&mut self) { function fmt (line 575) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Item (line 581) | type Item = T; type IntoIter (line 583) | type IntoIter = IntoIter; method into_iter (line 585) | fn into_iter(self) -> Self::IntoIter { type IntoIter (line 591) | pub struct IntoIter { type Item (line 596) | type Item = T; method next (line 598) | fn next(&mut self) -> Option { FILE: crossbeam-queue/src/seg_queue.rs constant WRITE (line 21) | const WRITE: usize = 1; constant READ (line 22) | const READ: usize = 2; constant DESTROY (line 23) | const DESTROY: usize = 4; constant LAP (line 26) | const LAP: usize = 32; constant BLOCK_CAP (line 28) | const BLOCK_CAP: usize = LAP - 1; constant SHIFT (line 30) | const SHIFT: usize = 1; constant HAS_NEXT (line 32) | const HAS_NEXT: usize = 1; type Slot (line 35) | struct Slot { function wait_write (line 45) | fn wait_write(&self) { type Block (line 56) | struct Block { constant LAYOUT (line 65) | const LAYOUT: Layout = { function new (line 75) | fn new() -> Box { function wait_next (line 93) | fn wait_next(&self) -> *mut Self { function destroy (line 105) | unsafe fn destroy(this: *mut Self, start: usize) { function destroy_mut (line 124) | unsafe fn destroy_mut(this: *mut Self) { type Position (line 130) | struct Position { type SegQueue (line 161) | pub struct SegQueue { function new (line 188) | pub const fn new() -> Self { function push (line 214) | pub fn push(&self, value: T) { function push_mut (line 309) | pub fn push_mut(&mut self, value: T) { function pop (line 364) | pub fn pop(&self) -> Option { function pop_mut (line 471) | pub fn pop_mut(&mut self) -> Option { function is_empty (line 541) | pub fn is_empty(&self) -> bool { function len (line 563) | pub fn len(&self) -> usize { method drop (line 600) | fn drop(&mut self) { function fmt (line 637) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method default (line 643) | fn default() -> Self { type Item (line 649) | type Item = T; type IntoIter (line 651) | type IntoIter = IntoIter; method into_iter (line 653) | fn into_iter(self) -> Self::IntoIter { type IntoIter (line 659) | pub struct IntoIter { type Item (line 664) | type Item = T; method next (line 666) | fn next(&mut self) -> Option { FILE: crossbeam-queue/tests/array_queue.rs function smoke (line 7) | fn smoke() { function capacity (line 19) | fn capacity() { function zero_capacity (line 28) | fn zero_capacity() { function len_empty_full (line 33) | fn len_empty_full() { function exclusive_reference (line 60) | fn exclusive_reference() { function len (line 90) | fn len() { function spsc (line 148) | fn spsc() { function spsc_ring_buffer (line 176) | fn spsc_ring_buffer() { function mpmc (line 216) | fn mpmc() { function mpmc_ring_buffer (line 252) | fn mpmc_ring_buffer() { function drops (line 297) | fn drops() { function linearizable (line 350) | fn linearizable() { function into_iter (line 378) | fn into_iter() { FILE: crossbeam-queue/tests/seg_queue.rs function smoke (line 7) | fn smoke() { function len_empty_full (line 18) | fn len_empty_full() { function len (line 36) | fn len() { function exclusive_reference (line 55) | fn exclusive_reference() { function spsc (line 102) | fn spsc() { function mpmc (line 129) | fn mpmc() { function drops (line 165) | fn drops() { function into_iter (line 216) | fn into_iter() { function into_iter_drop (line 227) | fn into_iter_drop() { function stack_overflow (line 240) | fn stack_overflow() { FILE: crossbeam-skiplist/benches/btree.rs function insert (line 10) | fn insert(b: &mut Bencher) { function iter (line 23) | fn iter(b: &mut Bencher) { function rev_iter (line 40) | fn rev_iter(b: &mut Bencher) { function lookup (line 57) | fn lookup(b: &mut Bencher) { function insert_remove (line 77) | fn insert_remove(b: &mut Bencher) { FILE: crossbeam-skiplist/benches/hash.rs function insert (line 10) | fn insert(b: &mut Bencher) { function iter (line 23) | fn iter(b: &mut Bencher) { function lookup (line 40) | fn lookup(b: &mut Bencher) { function insert_remove (line 60) | fn insert_remove(b: &mut Bencher) { FILE: crossbeam-skiplist/benches/skiplist.rs function insert (line 11) | fn insert(b: &mut Bencher) { function iter (line 26) | fn iter(b: &mut Bencher) { function rev_iter (line 44) | fn rev_iter(b: &mut Bencher) { function lookup (line 62) | fn lookup(b: &mut Bencher) { function insert_remove (line 82) | fn insert_remove(b: &mut Bencher) { FILE: crossbeam-skiplist/benches/skipmap.rs function insert (line 9) | fn insert(b: &mut Bencher) { function iter (line 22) | fn iter(b: &mut Bencher) { function rev_iter (line 39) | fn rev_iter(b: &mut Bencher) { function lookup (line 56) | fn lookup(b: &mut Bencher) { function insert_remove (line 76) | fn insert_remove(b: &mut Bencher) { FILE: crossbeam-skiplist/examples/simple.rs function main (line 3) | fn main() { FILE: crossbeam-skiplist/src/base.rs constant HEIGHT_BITS (line 24) | const HEIGHT_BITS: usize = 5; constant MAX_HEIGHT (line 27) | const MAX_HEIGHT: usize = 1 << HEIGHT_BITS; constant HEIGHT_MASK (line 30) | const HEIGHT_MASK: usize = (1 << HEIGHT_BITS) - 1; type Tower (line 37) | struct Tower { type TowerRef (line 47) | struct TowerRef<'a, K, V> { method clone (line 53) | fn clone(&self) -> Self { function new (line 67) | unsafe fn new(ptr: NonNull>) -> Self { function get_level (line 80) | unsafe fn get_level(self, index: usize) -> &'a Atomic> { type Head (line 91) | struct Head { function new (line 98) | fn new() -> Self { function as_tower (line 107) | fn as_tower(&self) -> TowerRef<'_, K, V> { function get_level (line 117) | unsafe fn get_level(&self, index: usize) -> &Atomic> { type Node (line 130) | struct Node { type NodeRef (line 151) | struct NodeRef<'a, K, V> { method clone (line 157) | fn clone(&self) -> Self { function alloc (line 169) | unsafe fn alloc(height: usize, ref_count: usize) -> *mut Self { function dealloc (line 189) | unsafe fn dealloc(ptr: *mut Self) { function get_layout (line 198) | fn get_layout(height: usize) -> Layout { function height (line 210) | fn height(&self) -> usize { function try_increment (line 222) | unsafe fn try_increment(&self) -> bool { function finalize (line 253) | unsafe fn finalize(ptr: *mut Self) { function new (line 273) | unsafe fn new(ptr: NonNull>) -> Self { function from_shared (line 284) | unsafe fn from_shared(shared: Shared<'a, Node>) -> Option { function decrement (line 294) | unsafe fn decrement(self, guard: &Guard) { function decrement_with_pin (line 309) | unsafe fn decrement_with_pin(self, parent: &SkipList, pin... function mark_tower (line 327) | fn mark_tower(self) -> bool { function is_removed (line 352) | fn is_removed(self) -> bool { function as_tower (line 365) | fn as_tower(self) -> TowerRef<'a, K, V> { function as_ref (line 377) | fn as_ref(self) -> &'a Node { function get_level (line 388) | unsafe fn get_level(&self, index: usize) -> &Atomic> { type Target (line 395) | type Target = Node; method deref (line 397) | fn deref(&self) -> &Node { function fmt (line 407) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function fmt (line 420) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Position (line 429) | struct Position<'a, K, V> { type HotData (line 443) | struct HotData { type SkipList (line 468) | pub struct SkipList { function new (line 487) | pub fn new(collector: Collector) -> Self { function with_comparator (line 494) | pub fn with_comparator(collector: Collector, comparator: C) -> Self { function is_empty (line 508) | pub fn is_empty(&self) -> bool { function len (line 516) | pub fn len(&self) -> usize { function check_guard (line 526) | fn check_guard(&self, guard: &Guard) { function front (line 538) | pub fn front<'a: 'g, 'g>(&'a self, guard: &'g Guard) -> Option(&'a self, guard: &'g Guard) -> Option(&self, key: &Q, guard: &Guard) -> bool function get (line 569) | pub fn get<'a: 'g, 'g, Q>(&'a self, key: &Q, guard: &'g Guard) -> Option... function lower_bound (line 590) | pub fn lower_bound<'a: 'g, 'g, Q>( function upper_bound (line 611) | pub fn upper_bound<'a: 'g, 'g, Q>( function get_or_insert (line 630) | pub fn get_or_insert(&self, key: K, value: V, guard: &Guard) -> RefEntry... function get_or_insert_with (line 641) | pub fn get_or_insert_with(&self, key: K, value: F, guard: &Guard) -> ... function iter (line 649) | pub fn iter<'a: 'g, 'g>(&'a self, guard: &'g Guard) -> Iter<'a, 'g, K, V... function ref_iter (line 660) | pub fn ref_iter(&self) -> RefIter<'_, K, V, C> { function range (line 669) | pub fn range<'a: 'g, 'g, Q, R>( function ref_range (line 692) | pub fn ref_range<'a, Q, R>(&'a self, range: R) -> RefRange<'a, Q, R, K, ... function random_height (line 708) | fn random_height(&self) -> usize { function help_unlink (line 759) | unsafe fn help_unlink<'a>( function next_node (line 787) | fn next_node<'a>( function search_bound (line 833) | fn search_bound<'a, Q>( function search_position (line 923) | fn search_position<'a, Q>(&'a self, key: &Q, guard: &'a Guard) -> Positi... function insert_internal (line 1013) | fn insert_internal( function insert (line 1247) | pub fn insert(&self, key: K, value: V, guard: &Guard) -> RefEntry<'_, K,... function compare_insert (line 1256) | pub fn compare_insert( function remove (line 1270) | pub fn remove(&self, key: &Q, guard: &Guard) -> Option Option> { function pop_back (line 1355) | pub fn pop_back(&self, guard: &Guard) -> Option> { function clear (line 1370) | pub fn clear(&self, guard: &mut Guard) { method drop (line 1414) | fn drop(&mut self) { function fmt (line 1444) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Item (line 1450) | type Item = (K, V); type IntoIter (line 1451) | type IntoIter = IntoIter; method into_iter (line 1453) | fn into_iter(self) -> Self::IntoIter { type Entry (line 1484) | pub struct Entry<'a: 'g, 'g, K, V, C = BasicComparator> { function is_removed (line 1492) | pub fn is_removed(&self) -> bool { function key (line 1497) | pub fn key(&self) -> &'g K { function value (line 1502) | pub fn value(&self) -> &'g V { function skiplist (line 1507) | pub fn skiplist(&self) -> &'a SkipList { function pin (line 1516) | pub fn pin(&self) -> Option> { function remove (line 1530) | pub fn remove(&self) -> bool { method clone (line 1548) | fn clone(&self) -> Self { function fmt (line 1562) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function move_next (line 1575) | pub fn move_next(&mut self) -> bool { function next (line 1586) | pub fn next(&self) -> Option { function move_prev (line 1600) | pub fn move_prev(&mut self) -> bool { function prev (line 1611) | pub fn prev(&self) -> Option { type RefEntry (line 1627) | pub struct RefEntry<'a, K, V, C = BasicComparator> { function is_removed (line 1634) | pub fn is_removed(&self) -> bool { function key (line 1639) | pub fn key(&self) -> &'a K { function value (line 1644) | pub fn value(&self) -> &'a V { function skiplist (line 1649) | pub fn skiplist(&self) -> &'a SkipList { function release (line 1654) | pub fn release(self, guard: &Guard) { function release_with_pin (line 1661) | pub fn release_with_pin(self, pin: F) function try_acquire (line 1670) | unsafe fn try_acquire(parent: &'a SkipList, node: NodeRef<'_, K... function remove (line 1694) | pub fn remove(&self, guard: &Guard) -> bool { method clone (line 1714) | fn clone(&self) -> Self { function fmt (line 1731) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function move_next (line 1744) | pub fn move_next(&mut self, guard: &Guard) -> bool { function next (line 1755) | pub fn next(&self, guard: &Guard) -> Option { function move_prev (line 1771) | pub fn move_prev(&mut self, guard: &Guard) -> bool { function prev (line 1782) | pub fn prev(&self, guard: &Guard) -> Option { type Iter (line 1799) | pub struct Iter<'a: 'g, 'g, K, V, C = BasicComparator> { type Item (line 1810) | type Item = Entry<'a, 'g, K, V, C>; method next (line 1812) | fn next(&mut self) -> Option { method next_back (line 1840) | fn next_back(&mut self) -> Option { function fmt (line 1868) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type RefIter (line 1877) | pub struct RefIter<'a, K, V, C = BasicComparator> { function fmt (line 1888) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function next (line 1907) | pub fn next(&mut self, guard: &Guard) -> Option> { function next_back (line 1936) | pub fn next_back(&mut self, guard: &Guard) -> Option type Item (line 1999) | type Item = Entry<'a, 'g, K, V, C>; method next (line 2001) | fn next(&mut self) -> Option { method next_back (line 2042) | fn next_back(&mut self) -> Option { function fmt (line 2085) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type RefRange (line 2095) | pub struct RefRange<'a, Q, R, K, V, C = BasicComparator> function fmt (line 2132) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function next (line 2148) | pub fn next(&mut self, guard: &Guard) -> Option> { function next_back (line 2196) | pub fn next_back(&mut self, guard: &Guard) -> Option { method drop (line 2264) | fn drop(&mut self) { type Item (line 2286) | type Item = (K, V); method next (line 2288) | fn next(&mut self) -> Option { function fmt (line 2325) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function try_pin_loop (line 2332) | pub(crate) fn try_pin_loop<'a: 'g, 'g, F, K, V, C>(mut f: F) -> Option(comparator: &C, bound: &Bound<&T>, other: ... function below_upper_bound (line 2357) | fn below_upper_bound(comparator: &C, bound: &Bound<&T>, other: ... FILE: crossbeam-skiplist/src/comparator.rs type Equivalator (line 48) | pub trait Equivalator { method equivalent (line 50) | fn equivalent(&self, lhs: &L, rhs: &R) -> bool; type Comparator (line 66) | pub trait Comparator: Equivalator { method compare (line 68) | fn compare(&self, lhs: &L, rhs: &R) -> Ordering; type BasicComparator (line 76) | pub struct BasicComparator; method equivalent (line 83) | fn equivalent(&self, lhs: &K, rhs: &Q) -> bool { method compare (line 93) | fn compare(&self, lhs: &K, rhs: &Q) -> Ordering { FILE: crossbeam-skiplist/src/equivalent.rs type Equivalent (line 18) | pub trait Equivalent { method equivalent (line 20) | fn equivalent(&self, key: &Q) -> bool; method equivalent (line 29) | fn equivalent(&self, key: &Q) -> bool { type Comparable (line 40) | pub trait Comparable: Equivalent { method compare (line 42) | fn compare(&self, key: &Q) -> Ordering; method compare (line 51) | fn compare(&self, key: &Q) -> Ordering { FILE: crossbeam-skiplist/src/map.rs type SkipMap (line 28) | pub struct SkipMap { function new (line 42) | pub fn new() -> Self { function with_comparator (line 59) | pub fn with_comparator(comparator: C) -> Self { function is_empty (line 77) | pub fn is_empty(&self) -> bool { function len (line 100) | pub fn len(&self) -> usize { function front (line 124) | pub fn front(&self) -> Option> { function back (line 144) | pub fn back(&self) -> Option> { function get_or_insert (line 166) | pub fn get_or_insert(&self, key: K, value: V) -> Entry<'_, K, V, C> { function get_or_insert_with (line 194) | pub fn get_or_insert_with(&self, key: K, value_fn: F) -> Entry<'_, K,... function iter (line 224) | pub fn iter(&self) -> Iter<'_, K, V, C> { function contains_key (line 247) | pub fn contains_key(&self, key: &Q) -> bool function get (line 271) | pub fn get(&self, key: &Q) -> Option> function lower_bound (line 306) | pub fn lower_bound<'a, Q>(&'a self, bound: Bound<&Q>) -> Option(&'a self, bound: Bound<&Q>) -> Option(&self, range: R) -> Range<'_, Q, R, K, V, C> function insert (line 403) | pub fn insert(&self, key: K, value: V) -> Entry<'_, K, V, C> { function compare_insert (line 430) | pub fn compare_insert(&self, key: K, value: V, compare_fn: F) -> Entr... function remove (line 456) | pub fn remove(&self, key: &Q) -> Option> function pop_front (line 487) | pub fn pop_front(&self) -> Option> { function pop_back (line 514) | pub fn pop_back(&self) -> Option> { function clear (line 532) | pub fn clear(&self) { method default (line 542) | fn default() -> Self { function fmt (line 552) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Item (line 558) | type Item = (K, V); type IntoIter (line 559) | type IntoIter = IntoIter; method into_iter (line 561) | fn into_iter(self) -> Self::IntoIter { type Item (line 572) | type Item = Entry<'a, K, V, C>; type IntoIter (line 573) | type IntoIter = Iter<'a, K, V, C>; method into_iter (line 575) | fn into_iter(self) -> Self::IntoIter { function from_iter (line 584) | fn from_iter(iter: I) -> Self type Entry (line 597) | pub struct Entry<'a, K, V, C = BasicComparator> { function new (line 602) | fn new(inner: base::RefEntry<'a, K, V, C>) -> Self { function key (line 609) | pub fn key(&self) -> &'a K { function value (line 614) | pub fn value(&self) -> &'a V { function is_removed (line 619) | pub fn is_removed(&self) -> bool { method drop (line 625) | fn drop(&mut self) { function move_next (line 637) | pub fn move_next(&mut self) -> bool { function move_prev (line 643) | pub fn move_prev(&mut self) -> bool { function next (line 649) | pub fn next(&self) -> Option { function prev (line 655) | pub fn prev(&self) -> Option { function remove (line 670) | pub fn remove(&self) -> bool { method clone (line 677) | fn clone(&self) -> Self { function fmt (line 689) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type IntoIter (line 698) | pub struct IntoIter { type Item (line 703) | type Item = (K, V); method next (line 705) | fn next(&mut self) -> Option { function fmt (line 711) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Iter (line 717) | pub struct Iter<'a, K, V, C = BasicComparator> { type Item (line 725) | type Item = Entry<'a, K, V, C>; method next (line 727) | fn next(&mut self) -> Option> { method next_back (line 737) | fn next_back(&mut self) -> Option> { function fmt (line 744) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method drop (line 750) | fn drop(&mut self) { type Range (line 757) | pub struct Range<'a, Q, R, K, V, C = BasicComparator> type Item (line 772) | type Item = Entry<'a, K, V, C>; method next (line 774) | fn next(&mut self) -> Option> { method next_back (line 786) | fn next_back(&mut self) -> Option> { function fmt (line 800) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method drop (line 815) | fn drop(&mut self) { FILE: crossbeam-skiplist/src/set.rs type SkipSet (line 24) | pub struct SkipSet { function new (line 38) | pub fn new() -> Self { function with_comparator (line 55) | pub fn with_comparator(comparator: C) -> Self { function is_empty (line 74) | pub fn is_empty(&self) -> bool { function len (line 94) | pub fn len(&self) -> usize { function front (line 116) | pub fn front(&self) -> Option> { function back (line 133) | pub fn back(&self) -> Option> { function contains (line 148) | pub fn contains(&self, key: &Q) -> bool function get (line 167) | pub fn get(&self, key: &Q) -> Option> function lower_bound (line 199) | pub fn lower_bound<'a, Q>(&'a self, bound: Bound<&Q>) -> Option(&'a self, bound: Bound<&Q>) -> Option Entry<'_, T, C> { function iter (line 269) | pub fn iter(&self) -> Iter<'_, T, C> { function range (line 292) | pub fn range(&self, range: R) -> Range<'_, Q, R, T, C> function insert (line 323) | pub fn insert(&self, key: T) -> Entry<'_, T, C> { function remove (line 342) | pub fn remove(&self, key: &Q) -> Option> function pop_front (line 371) | pub fn pop_front(&self) -> Option> { function pop_back (line 396) | pub fn pop_back(&self) -> Option> { function clear (line 414) | pub fn clear(&self) { method default (line 423) | fn default() -> Self { function fmt (line 433) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Item (line 439) | type Item = T; type IntoIter (line 440) | type IntoIter = IntoIter; method into_iter (line 442) | fn into_iter(self) -> Self::IntoIter { type Item (line 453) | type Item = Entry<'a, T, C>; type IntoIter (line 454) | type IntoIter = Iter<'a, T, C>; method into_iter (line 456) | fn into_iter(self) -> Self::IntoIter { function from_iter (line 465) | fn from_iter(iter: I) -> Self type Entry (line 478) | pub struct Entry<'a, T, C = BasicComparator> { function new (line 483) | fn new(inner: map::Entry<'a, T, (), C>) -> Self { function value (line 488) | pub fn value(&self) -> &'a T { function is_removed (line 493) | pub fn is_removed(&self) -> bool { function move_next (line 503) | pub fn move_next(&mut self) -> bool { function move_prev (line 508) | pub fn move_prev(&mut self) -> bool { function next (line 513) | pub fn next(&self) -> Option { function prev (line 518) | pub fn prev(&self) -> Option { function remove (line 531) | pub fn remove(&self) -> bool { method clone (line 537) | fn clone(&self) -> Self { function fmt (line 548) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Target (line 556) | type Target = T; method deref (line 558) | fn deref(&self) -> &Self::Target { type IntoIter (line 564) | pub struct IntoIter { type Item (line 569) | type Item = T; method next (line 571) | fn next(&mut self) -> Option { function fmt (line 577) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Iter (line 583) | pub struct Iter<'a, T, C = BasicComparator> { type Item (line 591) | type Item = Entry<'a, T, C>; method next (line 593) | fn next(&mut self) -> Option { method next_back (line 602) | fn next_back(&mut self) -> Option { function fmt (line 608) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Range (line 614) | pub struct Range<'a, Q, R, T, C = BasicComparator> type Item (line 629) | type Item = Entry<'a, T, C>; method next (line 631) | fn next(&mut self) -> Option { method next_back (line 642) | fn next_back(&mut self) -> Option { function fmt (line 654) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { FILE: crossbeam-skiplist/tests/base.rs function ref_entry (line 11) | fn ref_entry<'a, K, V>(e: impl Into>>) -... type Entry (line 14) | struct Entry<'a, K, V>(Option>); function value (line 16) | fn value(&self) -> &V { method drop (line 21) | fn drop(&mut self) { function new (line 29) | fn new() { function is_empty (line 35) | fn is_empty() { function insert (line 57) | fn insert() { function remove (line 74) | fn remove() { function entry (line 110) | fn entry() { function entry_remove (line 135) | fn entry_remove() { function entry_reposition (line 162) | fn entry_reposition() { function len (line 182) | fn len() { function insert_and_remove (line 206) | fn insert_and_remove() { function get (line 255) | fn get() { function lower_bound (line 277) | fn lower_bound() { function upper_bound (line 357) | fn upper_bound() { function get_or_insert (line 437) | fn get_or_insert() { function get_or_insert_with (line 456) | fn get_or_insert_with() { function get_or_insert_with_panic (line 475) | fn get_or_insert_with_panic() { function get_or_insert_with_parallel_run (line 491) | fn get_or_insert_with_parallel_run() { function get_next_prev (line 526) | fn get_next_prev() { function front_and_back (line 560) | fn front_and_back() { function iter (line 575) | fn iter() { function iter_range (line 600) | fn iter_range() { function into_iter (line 822) | fn into_iter() { function clear (line 844) | fn clear() { function drops (line 859) | fn drops() { function comparable_get (line 907) | fn comparable_get() { function remove_race (line 978) | fn remove_race() { FILE: crossbeam-skiplist/tests/map.rs function smoke (line 12) | fn smoke() { function is_empty (line 20) | fn is_empty() { function insert (line 41) | fn insert() { function compare_and_insert (line 57) | fn compare_and_insert() { function compare_insert_with_absent_key (line 85) | fn compare_insert_with_absent_key() { function remove (line 99) | fn remove() { function concurrent_insert (line 135) | fn concurrent_insert() { function concurrent_compare_and_insert (line 154) | fn concurrent_compare_and_insert() { function concurrent_remove (line 174) | fn concurrent_remove() { function next_memory_leak (line 193) | fn next_memory_leak() { function next_back_memory_leak (line 204) | fn next_back_memory_leak() { function range_next_memory_leak (line 216) | fn range_next_memory_leak() { function entry (line 227) | fn entry() { function ordered_iter (line 251) | fn ordered_iter() { function ordered_range (line 278) | fn ordered_range() { function entry_remove (line 304) | fn entry_remove() { function entry_reposition (line 330) | fn entry_reposition() { function len (line 349) | fn len() { function insert_and_remove (line 372) | fn insert_and_remove() { function get (line 420) | fn get() { function lower_bound (line 441) | fn lower_bound() { function upper_bound (line 475) | fn upper_bound() { function get_or_insert (line 509) | fn get_or_insert() { function get_or_insert_with (line 527) | fn get_or_insert_with() { function get_or_insert_with_panic (line 545) | fn get_or_insert_with_panic() { function get_or_insert_with_parallel_run (line 559) | fn get_or_insert_with_parallel_run() { function get_next_prev (line 588) | fn get_next_prev() { function front_and_back (line 621) | fn front_and_back() { function iter (line 635) | fn iter() { function iter_range (line 659) | fn iter_range() { function iter_range2 (line 888) | fn iter_range2() { function into_iter (line 895) | fn into_iter() { function clear (line 916) | fn clear() { function concurrent_insert_get_same_key (line 931) | fn concurrent_insert_get_same_key() { function issue_1178 (line 951) | fn issue_1178() { function comparator (line 968) | fn comparator() { FILE: crossbeam-skiplist/tests/set.rs function smoke (line 11) | fn smoke() { function is_empty (line 19) | fn is_empty() { function insert (line 40) | fn insert() { function remove (line 56) | fn remove() { function concurrent_insert (line 92) | fn concurrent_insert() { function concurrent_remove (line 112) | fn concurrent_remove() { function entry (line 131) | fn entry() { function entry_remove (line 155) | fn entry_remove() { function entry_reposition (line 181) | fn entry_reposition() { function len (line 200) | fn len() { function insert_and_remove (line 223) | fn insert_and_remove() { function get (line 271) | fn get() { function lower_bound (line 292) | fn lower_bound() { function upper_bound (line 326) | fn upper_bound() { function get_or_insert (line 360) | fn get_or_insert() { function get_next_prev (line 378) | fn get_next_prev() { function front_and_back (line 411) | fn front_and_back() { function iter (line 425) | fn iter() { function iter_range (line 449) | fn iter_range() { function iter_range2 (line 671) | fn iter_range2() { function into_iter (line 678) | fn into_iter() { function clear (line 688) | fn clear() { function concurrent_insert_get_same_key (line 703) | fn concurrent_insert_get_same_key() { function comparator (line 722) | fn comparator() { FILE: crossbeam-utils/benches/atomic_cell.rs function load_u8 (line 10) | fn load_u8(b: &mut test::Bencher) { function store_u8 (line 18) | fn store_u8(b: &mut test::Bencher) { function fetch_add_u8 (line 24) | fn fetch_add_u8(b: &mut test::Bencher) { function compare_exchange_u8 (line 30) | fn compare_exchange_u8(b: &mut test::Bencher) { function concurrent_load_u8 (line 40) | fn concurrent_load_u8(b: &mut test::Bencher) { function load_usize (line 86) | fn load_usize(b: &mut test::Bencher) { function store_usize (line 94) | fn store_usize(b: &mut test::Bencher) { function fetch_add_usize (line 100) | fn fetch_add_usize(b: &mut test::Bencher) { function compare_exchange_usize (line 106) | fn compare_exchange_usize(b: &mut test::Bencher) { function concurrent_load_usize (line 116) | fn concurrent_load_usize(b: &mut test::Bencher) { FILE: crossbeam-utils/build.rs function main (line 18) | fn main() { FILE: crossbeam-utils/src/alloc_helper.rs type Global (line 7) | pub(crate) struct Global; method alloc_impl (line 12) | fn alloc_impl(&self, layout: Layout, zeroed: bool) -> Option Option> { method allocate_zeroed (line 44) | pub(crate) fn allocate_zeroed(self, layout: Layout) -> Option, layout: Layout) { function without_provenance_mut (line 70) | const fn without_provenance_mut(addr: usize) -> *mut T { FILE: crossbeam-utils/src/atomic/atomic_cell.rs type AtomicCell (line 33) | pub struct AtomicCell { function new (line 66) | pub const fn new(val: T) -> Self { function into_inner (line 87) | pub const fn into_inner(self) -> T { function is_lock_free (line 160) | pub const fn is_lock_free() -> bool { function store (line 177) | pub fn store(&self, val: T) { function swap (line 200) | pub fn swap(&self, val: T) -> T { function as_ptr (line 216) | pub const fn as_ptr(&self) -> *mut T { function take (line 235) | pub fn take(&self) -> T { function load (line 252) | pub fn load(&self) -> T { function compare_exchange (line 276) | pub fn compare_exchange(&self, current: T, new: T) -> Result { function fetch_update (line 300) | pub fn fetch_update(&self, mut f: F) -> Result method drop (line 318) | fn drop(&mut self) { function fetch_and (line 780) | pub fn fetch_and(&self, val: bool) -> bool { function fetch_nand (line 823) | pub fn fetch_nand(&self, val: bool) -> bool { function fetch_or (line 863) | pub fn fetch_or(&self, val: bool) -> bool { function fetch_xor (line 903) | pub fn fetch_xor(&self, val: bool) -> bool { method default (line 929) | fn default() -> Self { function from (line 936) | fn from(val: T) -> Self { function fmt (line 942) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function can_transmute (line 950) | const fn can_transmute() -> bool { function lock (line 965) | fn lock(addr: usize) -> &'static SeqLock { type AtomicUnit (line 1000) | struct AtomicUnit; method load (line 1004) | fn load(&self, _order: Ordering) {} method store (line 1007) | fn store(&self, _val: (), _order: Ordering) {} method swap (line 1010) | fn swap(&self, _val: (), _order: Ordering) {} method compare_exchange_weak (line 1013) | fn compare_exchange_weak( function atomic_is_lock_free (line 1025) | const fn atomic_is_lock_free() -> bool { function atomic_load (line 1033) | unsafe fn atomic_load(src: *mut T) -> T function atomic_store (line 1075) | unsafe fn atomic_store(dst: *mut T, val: T) { function atomic_swap (line 1094) | unsafe fn atomic_swap(dst: *mut T, val: T) -> T { function atomic_compare_exchange_weak (line 1118) | unsafe fn atomic_compare_exchange_weak(dst: *mut T, mut current: T, n... FILE: crossbeam-utils/src/atomic/consume.rs type AtomicConsume (line 5) | pub trait AtomicConsume { method load_consume (line 24) | fn load_consume(&self) -> Self::Val; type Val (line 103) | type Val = *mut T; type Val (line 109) | type Val = *mut T; FILE: crossbeam-utils/src/atomic/seq_lock.rs type SeqLock (line 9) | pub(crate) struct SeqLock { method new (line 18) | pub(crate) const fn new() -> Self { method optimistic_read (line 28) | pub(crate) fn optimistic_read(&self) -> Option { method validate_read (line 38) | pub(crate) fn validate_read(&self, stamp: usize) -> bool { method write (line 45) | pub(crate) fn write(&'static self) -> SeqLockWriteGuard { type SeqLockWriteGuard (line 65) | pub(crate) struct SeqLockWriteGuard { method abort (line 76) | pub(crate) fn abort(self) { method drop (line 87) | fn drop(&mut self) { function test_abort (line 100) | fn test_abort() { FILE: crossbeam-utils/src/atomic/seq_lock_wide.rs type SeqLock (line 12) | pub(crate) struct SeqLock { method new (line 24) | pub(crate) const fn new() -> Self { method optimistic_read (line 35) | pub(crate) fn optimistic_read(&self) -> Option<(usize, usize)> { method validate_read (line 56) | pub(crate) fn validate_read(&self, stamp: (usize, usize)) -> bool { method write (line 81) | pub(crate) fn write(&'static self) -> SeqLockWriteGuard { type SeqLockWriteGuard (line 103) | pub(crate) struct SeqLockWriteGuard { method abort (line 114) | pub(crate) fn abort(self) { method drop (line 122) | fn drop(&mut self) { function test_abort (line 147) | fn test_abort() { FILE: crossbeam-utils/src/backoff.rs constant SPIN_LIMIT (line 5) | const SPIN_LIMIT: u32 = 6; constant YIELD_LIMIT (line 6) | const YIELD_LIMIT: u32 = 10; type Backoff (line 80) | pub struct Backoff { method new (line 95) | pub fn new() -> Self { method reset (line 110) | pub fn reset(&self) { method spin (line 146) | pub fn spin(&self) { method snooze (line 207) | pub fn snooze(&self) { method is_completed (line 271) | pub fn is_completed(&self) -> bool { method fmt (line 277) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method default (line 286) | fn default() -> Self { FILE: crossbeam-utils/src/cache_padded.rs type CachePadded (line 150) | pub struct CachePadded { function new (line 167) | pub const fn new(t: T) -> Self { function into_inner (line 182) | pub fn into_inner(self) -> T { type Target (line 188) | type Target = T; method deref (line 190) | fn deref(&self) -> &T { method deref_mut (line 196) | fn deref_mut(&mut self) -> &mut T { function fmt (line 202) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function from (line 210) | fn from(t: T) -> Self { function fmt (line 216) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { FILE: crossbeam-utils/src/sync/once_lock.rs type OnceLock (line 8) | pub(crate) struct OnceLock { function new (line 21) | pub(crate) const fn new() -> Self { function get_or_init (line 43) | pub(crate) fn get_or_init(&self, f: F) -> &T function initialize (line 59) | fn initialize(&self, f: F) function get_unchecked (line 74) | unsafe fn get_unchecked(&self) -> &T { method drop (line 81) | fn drop(&mut self) { FILE: crossbeam-utils/src/sync/parker.rs type Parker (line 56) | pub struct Parker { method new (line 89) | pub fn new() -> Self { method park (line 109) | pub fn park(&self) { method park_timeout (line 126) | pub fn park_timeout(&self, timeout: Duration) -> UnparkReason { method park_deadline (line 150) | pub fn park_deadline(&self, deadline: Instant) -> UnparkReason { method unparker (line 174) | pub fn unparker(&self) -> &Unparker { method into_raw (line 189) | pub fn into_raw(this: Self) -> *const () { method from_raw (line 208) | pub unsafe fn from_raw(ptr: *const ()) -> Self { method fmt (line 217) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method default (line 64) | fn default() -> Self { type Unparker (line 223) | pub struct Unparker { method unpark (line 259) | pub fn unpark(&self) { method into_raw (line 275) | pub fn into_raw(this: Self) -> *const () { method from_raw (line 296) | pub unsafe fn from_raw(ptr: *const ()) -> Self { method fmt (line 304) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method clone (line 310) | fn clone(&self) -> Self { type UnparkReason (line 321) | pub enum UnparkReason { constant EMPTY (line 329) | const EMPTY: usize = 0; constant PARKED (line 330) | const PARKED: usize = 1; constant NOTIFIED (line 331) | const NOTIFIED: usize = 2; type Inner (line 333) | struct Inner { method park (line 340) | fn park(&self, deadline: Option) -> UnparkReason { method unpark (line 412) | pub(crate) fn unpark(&self) { FILE: crossbeam-utils/src/sync/sharded_lock.rs constant NUM_SHARDS (line 22) | const NUM_SHARDS: usize = 8; type Shard (line 25) | struct Shard { type ShardedLock (line 82) | pub struct ShardedLock { function new (line 106) | pub fn new(value: T) -> Self { function into_inner (line 139) | pub fn into_inner(self) -> LockResult { function is_poisoned (line 173) | pub fn is_poisoned(&self) -> bool { function get_mut (line 195) | pub fn get_mut(&mut self) -> LockResult<&mut T> { function try_read (line 230) | pub fn try_read(&self) -> TryLockResult> { function read (line 290) | pub fn read(&self) -> LockResult> { function try_write (line 334) | pub fn try_write(&self) -> TryLockResult> { function write (line 414) | pub fn write(&self) -> LockResult> { function fmt (line 451) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method default (line 477) | fn default() -> Self { function from (line 483) | fn from(t: T) -> Self { type ShardedLockReadGuard (line 490) | pub struct ShardedLockReadGuard<'a, T: ?Sized> { type Target (line 499) | type Target = T; method deref (line 501) | fn deref(&self) -> &T { function fmt (line 507) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function fmt (line 515) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type ShardedLockWriteGuard (line 522) | pub struct ShardedLockWriteGuard<'a, T: ?Sized> { method drop (line 530) | fn drop(&mut self) { function fmt (line 543) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { function fmt (line 551) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Target (line 557) | type Target = T; method deref (line 559) | fn deref(&self) -> &T { method deref_mut (line 565) | fn deref_mut(&mut self) -> &mut T { function current_index (line 578) | fn current_index() -> Option { type ThreadIndices (line 583) | struct ThreadIndices { function thread_indices (line 594) | fn thread_indices() -> &'static Mutex { type Registration (line 609) | struct Registration { method drop (line 615) | fn drop(&mut self) { FILE: crossbeam-utils/src/sync/wait_group.rs type WaitGroup (line 50) | pub struct WaitGroup { method new (line 83) | pub fn new() -> Self { method wait (line 110) | pub fn wait(self) { method fmt (line 154) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Inner (line 55) | struct Inner { method default (line 62) | fn default() -> Self { method drop (line 135) | fn drop(&mut self) { method clone (line 145) | fn clone(&self) -> Self { FILE: crossbeam-utils/src/thread.rs type SharedVec (line 120) | type SharedVec = Arc>>; type SharedOption (line 121) | type SharedOption = Arc>>; function scope (line 146) | pub fn scope<'env, F, R>(f: F) -> thread::Result type Scope (line 206) | pub struct Scope<'env> { function spawn (line 258) | pub fn spawn<'scope, F, T>(&'scope self, f: F) -> ScopedJoinHandle<'scop... function builder (line 282) | pub fn builder<'scope>(&'scope self) -> ScopedThreadBuilder<'scope, 'env> { function fmt (line 291) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type ScopedThreadBuilder (line 330) | pub struct ScopedThreadBuilder<'scope, 'env> { function name (line 357) | pub fn name(mut self, name: String) -> Self { function stack_size (line 382) | pub fn stack_size(mut self, size: usize) -> Self { function spawn (line 424) | pub fn spawn(self, f: F) -> io::Result> type ScopedJoinHandle (line 490) | pub struct ScopedJoinHandle<'scope, T> { function join (line 533) | pub fn join(self) -> thread::Result { function thread (line 556) | pub fn thread(&self) -> &thread::Thread { type Sealed (line 571) | pub trait Sealed {} type JoinHandleExt (line 575) | pub trait JoinHandleExt: sealed::Sealed { method as_pthread_t (line 577) | fn as_pthread_t(&self) -> RawPthread; method into_pthread_t (line 584) | fn into_pthread_t(self) -> RawPthread; method as_pthread_t (line 589) | fn as_pthread_t(&self) -> RawPthread { method into_pthread_t (line 595) | fn into_pthread_t(self) -> RawPthread { method as_raw_handle (line 608) | fn as_raw_handle(&self) -> RawHandle { method into_raw_handle (line 617) | fn into_raw_handle(self) -> RawHandle { function fmt (line 624) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { FILE: crossbeam-utils/tests/atomic_cell.rs function always_use_fallback (line 9) | fn always_use_fallback() -> bool { function is_lock_free (line 21) | fn is_lock_free() { function drops_unit (line 77) | fn drops_unit() { function drops_u8 (line 119) | fn drops_u8() { function drops_usize (line 165) | fn drops_usize() { function modular_u8 (line 211) | fn modular_u8() { function modular_usize (line 235) | fn modular_usize() { function garbage_padding (line 259) | fn garbage_padding() { function const_atomic_cell (line 276) | fn const_atomic_cell() { function issue_748 (line 342) | fn issue_748() { function issue_833 (line 362) | fn issue_833() { FILE: crossbeam-utils/tests/cache_padded.rs function default (line 6) | fn default() { function store_u64 (line 12) | fn store_u64() { function store_pair (line 18) | fn store_pair() { function distance (line 25) | fn distance() { function different_sizes (line 35) | fn different_sizes() { function large (line 51) | fn large() { function debug (line 58) | fn debug() { function drops (line 66) | fn drops() { function clone (line 89) | fn clone() { function runs_custom_clone (line 96) | fn runs_custom_clone() { FILE: crossbeam-utils/tests/parker.rs function park_timeout_unpark_before (line 9) | fn park_timeout_unpark_before() { function park_timeout_unpark_not_called (line 21) | fn park_timeout_unpark_not_called() { function park_timeout_unpark_called_other_thread (line 32) | fn park_timeout_unpark_called_other_thread() { FILE: crossbeam-utils/tests/sharded_lock.rs type NonCopy (line 13) | struct NonCopy(i32); function smoke (line 16) | fn smoke() { function frob (line 25) | fn frob() { function arc_poison_wr (line 52) | fn arc_poison_wr() { function arc_poison_ww (line 64) | fn arc_poison_ww() { function arc_no_poison_rr (line 78) | fn arc_no_poison_rr() { function arc_no_poison_sl (line 90) | fn arc_no_poison_sl() { function arc (line 103) | fn arc() { function arc_access_in_unwind (line 141) | fn arc_access_in_unwind() { function unsized_type (line 163) | fn unsized_type() { function try_write (line 175) | fn try_write() { function test_into_inner (line 190) | fn test_into_inner() { function test_into_inner_drop (line 196) | fn test_into_inner_drop() { function test_into_inner_poison (line 214) | fn test_into_inner_poison() { function test_get_mut (line 231) | fn test_get_mut() { function test_get_mut_poison (line 238) | fn test_get_mut_poison() { FILE: crossbeam-utils/tests/thread.rs constant THREADS (line 10) | const THREADS: usize = 10; constant SMALL_STACK_SIZE (line 11) | const SMALL_STACK_SIZE: usize = 20; function join (line 14) | fn join() { function counter (line 34) | fn counter() { function counter_builder (line 49) | fn counter_builder() { function counter_panic (line 69) | fn counter_panic() { function panic_twice (line 89) | fn panic_twice() { function panic_many (line 113) | fn panic_many() { function nesting (line 137) | fn nesting() { function join_nested (line 169) | fn join_nested() { function scope_returns_ok (line 184) | fn scope_returns_ok() { function as_pthread_t (line 191) | fn as_pthread_t() { function as_raw_handle (line 206) | fn as_raw_handle() { FILE: crossbeam-utils/tests/wait_group.rs constant THREADS (line 5) | const THREADS: usize = 10; function wait (line 8) | fn wait() { function wait_and_drop (line 37) | fn wait_and_drop() { FILE: no_atomic.rs constant NO_ATOMIC (line 4) | const NO_ATOMIC: &[&str] = &[ FILE: tests/subcrates.rs function channel (line 6) | fn channel() { function deque (line 16) | fn deque() { function epoch (line 23) | fn epoch() { function queue (line 28) | fn queue() { function utils (line 35) | fn utils() {