Lines Copies Function name ----- ------ ------------- 6145 (100%) 307 (100%) (TOTAL) 408 (6.6%) 2 (0.7%) core::sync::atomic::atomic_compare_exchange 390 (6.3%) 1 (0.3%) event_listener::EventListener::wait_internal 299 (4.9%) 1 (0.3%) ::poll 216 (3.5%) 4 (1.3%) alloc::alloc::box_free 196 (3.2%) 1 (0.3%) event_listener::Event::inner 182 (3.0%) 1 (0.3%) event_listener::List::insert 180 (2.9%) 1 (0.3%) event_listener::List::remove 120 (2.0%) 1 (0.3%) event_listener::List::notify 114 (1.9%) 3 (1.0%) core::sync::atomic::atomic_load 110 (1.8%) 2 (0.7%) as core::ops::drop::Drop>::drop 110 (1.8%) 1 (0.3%) event_listener::EventListener::discard 108 (1.8%) 1 (0.3%) event_listener::List::notify_additional 104 (1.7%) 1 (0.3%) ::drop 101 (1.6%) 1 (0.3%) event_listener::Event::listen 98 (1.6%) 1 (0.3%) alloc::sync::Arc::new 94 (1.5%) 2 (0.7%) core::mem::replace 89 (1.4%) 1 (0.3%) alloc::alloc::Global::alloc_impl 85 (1.4%) 1 (0.3%) std::sync::mutex::Mutex::new 84 (1.4%) 2 (0.7%) alloc::sync::Weak::inner 78 (1.3%) 1 (0.3%) std::sync::poison::map_result 72 (1.2%) 2 (0.7%) core::cell::Cell::replace 64 (1.0%) 1 (0.3%) event_listener::EventListener::wait_timeout 62 (1.0%) 2 (0.7%) core::sync::atomic::atomic_store 56 (0.9%) 1 (0.3%) as core::cmp::PartialEq>::eq 56 (0.9%) 1 (0.3%) core::result::Result::unwrap 54 (0.9%) 1 (0.3%) alloc::boxed::Box::into_unique 52 (0.8%) 6 (2.0%) core::cell::UnsafeCell::new 52 (0.8%) 1 (0.3%) ::eq 51 (0.8%) 3 (1.0%) core::ptr::read 50 (0.8%) 1 (0.3%) core::fmt::Arguments::new_v1 48 (0.8%) 2 (0.7%) as core::ops::drop::Drop>::drop 48 (0.8%) 2 (0.7%) core::alloc::layout::Layout::for_value_raw 42 (0.7%) 1 (0.3%) core::result::Result::unwrap_or_else 40 (0.7%) 1 (0.3%) std::sync::poison::Flag::borrow 35 (0.6%) 1 (0.3%) alloc::sync::Arc::into_raw 32 (0.5%) 1 (0.3%) alloc::boxed::Box::into_raw_with_allocator 31 (0.5%) 2 (0.7%) core::cell::Cell::set 31 (0.5%) 1 (0.3%) ::drop 31 (0.5%) 1 (0.3%) core::fmt::ArgumentV1::new 31 (0.5%) 1 (0.3%) core::ptr::drop_in_place> 31 (0.5%) 1 (0.3%) core::ptr::metadata::from_raw_parts_mut 31 (0.5%) 1 (0.3%) event_listener::full_fence 30 (0.5%) 2 (0.7%) alloc::boxed::Box::leak 30 (0.5%) 2 (0.7%) alloc::sync::Arc::drop_slow 30 (0.5%) 1 (0.3%) core::sync::atomic::atomic_add 30 (0.5%) 1 (0.3%) core::sync::atomic::atomic_sub 30 (0.5%) 1 (0.3%) core::sync::atomic::atomic_swap 29 (0.5%) 1 (0.3%) core::ptr::drop_in_place 28 (0.5%) 1 (0.3%) alloc::alloc::exchange_malloc 28 (0.5%) 1 (0.3%) alloc::boxed::Box::from_raw_in 28 (0.5%) 1 (0.3%) alloc::boxed::Box::new 28 (0.5%) 1 (0.3%) core::option::Option::ok_or 28 (0.5%) 1 (0.3%) core::ptr::drop_in_place 28 (0.5%) 1 (0.3%) core::ptr::drop_in_place 28 (0.5%) 1 (0.3%) core::ptr::drop_in_place 28 (0.5%) 1 (0.3%) core::ptr::drop_in_place 27 (0.4%) 4 (1.3%) core::ptr::non_null::NonNull::new_unchecked 27 (0.4%) 3 (1.0%) core::mem::align_of_val_raw 27 (0.4%) 1 (0.3%) std::sync::poison::Flag::done 26 (0.4%) 4 (1.3%) core::mem::manually_drop::ManuallyDrop::new 26 (0.4%) 4 (1.3%) core::ptr::unique::Unique::cast 26 (0.4%) 2 (0.7%) core::cell::Cell::new 26 (0.4%) 1 (0.3%) core::ptr::drop_in_place> 26 (0.4%) 1 (0.3%) event_listener::Event::new 23 (0.4%) 6 (2.0%) core::mem::drop 23 (0.4%) 4 (1.3%) core::ptr::unique::Unique::as_ref 23 (0.4%) 1 (0.3%) ::clone 23 (0.4%) 1 (0.3%) ::partial_cmp 23 (0.4%) 1 (0.3%) ::partial_cmp 23 (0.4%) 1 (0.3%) core::cmp::PartialOrd::ge 23 (0.4%) 1 (0.3%) core::sync::atomic::fence 22 (0.4%) 3 (1.0%) core::mem::maybe_uninit::MaybeUninit::assume_init 22 (0.4%) 1 (0.3%) as core::ops::try_trait::Try>::branch 22 (0.4%) 1 (0.3%) event_listener::Inner::lock 21 (0.3%) 2 (0.7%) std::sync::poison::PoisonError::new 21 (0.3%) 1 (0.3%) ::eq 20 (0.3%) 1 (0.3%) ::deallocate 20 (0.3%) 1 (0.3%) core::ptr::drop_in_place> 20 (0.3%) 1 (0.3%) std::panicking::panic_count::count_is_zero 19 (0.3%) 1 (0.3%) as core::fmt::Debug>::fmt 18 (0.3%) 2 (0.7%) core::mem::size_of_val_raw 18 (0.3%) 1 (0.3%) as core::clone::Clone>::clone 17 (0.3%) 1 (0.3%) std::sync::mutex::MutexGuard::new 16 (0.3%) 1 (0.3%) core::alloc::layout::size_align 16 (0.3%) 1 (0.3%) event_listener::EventListener::wait_deadline 16 (0.3%) 1 (0.3%) std::sync::mutex::MutexGuard::new::{{closure}} 15 (0.2%) 1 (0.3%) ::default 15 (0.2%) 1 (0.3%) alloc::sync::data_offset_align 15 (0.2%) 1 (0.3%) std::sys_common::thread_parker::futex::Parker::unpark 14 (0.2%) 9 (2.9%) core::cell::UnsafeCell::get 14 (0.2%) 3 (1.0%) core::ptr::write 14 (0.2%) 1 (0.3%) as core::ops::try_trait::FromResidual>>::from_residual 14 (0.2%) 1 (0.3%) alloc::sync::Arc::from_raw 14 (0.2%) 1 (0.3%) core::alloc::layout::Layout::from_size_align_unchecked 14 (0.2%) 1 (0.3%) core::option::Option::is_some 14 (0.2%) 1 (0.3%) core::ptr::drop_in_place 14 (0.2%) 1 (0.3%) core::ptr::non_null::NonNull::new 14 (0.2%) 1 (0.3%) event_listener::State::is_notified 13 (0.2%) 1 (0.3%) core::alloc::layout::Layout::padding_needed_for 13 (0.2%) 1 (0.3%) core::ptr::non_null::NonNull<[T]>::slice_from_raw_parts 12 (0.2%) 3 (1.0%) core::ptr::non_null::NonNull::as_ref 12 (0.2%) 2 (0.7%) core::ptr::non_null::NonNull::cast 12 (0.2%) 1 (0.3%) as core::ops::drop::Drop>::drop 12 (0.2%) 1 (0.3%) alloc::alloc::alloc 12 (0.2%) 1 (0.3%) alloc::alloc::alloc_zeroed 12 (0.2%) 1 (0.3%) alloc::alloc::dealloc 12 (0.2%) 1 (0.3%) core::cell::Cell::into_inner 11 (0.2%) 5 (1.6%) core::ptr::non_null::NonNull::as_ptr 11 (0.2%) 5 (1.6%) core::ptr::unique::Unique::as_ptr 11 (0.2%) 2 (0.7%) core::ptr::mut_ptr::::is_null 11 (0.2%) 1 (0.3%) core::alloc::layout::Layout::new 11 (0.2%) 1 (0.3%) core::option::Option::take 11 (0.2%) 1 (0.3%) core::ptr::mut_ptr::::write 10 (0.2%) 2 (0.7%) alloc::sync::Arc::get_mut_unchecked 10 (0.2%) 2 (0.7%) core::pin::Pin

::new_unchecked 10 (0.2%) 1 (0.3%) ::drop 10 (0.2%) 1 (0.3%) core::ptr::mut_ptr::::guaranteed_eq 10 (0.2%) 1 (0.3%) core::ptr::mut_ptr::::offset 10 (0.2%) 1 (0.3%) core::sync::atomic::AtomicPtr::compare_exchange 10 (0.2%) 1 (0.3%) core::sync::atomic::AtomicUsize::compare_exchange 10 (0.2%) 1 (0.3%) core::task::wake::Waker::wake 10 (0.2%) 1 (0.3%) event_listener::EventListener::wait 9 (0.1%) 3 (1.0%) core::mem::maybe_uninit::MaybeUninit::uninit 9 (0.1%) 2 (0.7%) core::ptr::unique::Unique::new_unchecked 9 (0.1%) 1 (0.3%) ::drop 9 (0.1%) 1 (0.3%) core::ptr::drop_in_place> 9 (0.1%) 1 (0.3%) core::ptr::non_null::NonNull<[T]>::as_non_null_ptr 9 (0.1%) 1 (0.3%) core::ptr::slice_from_raw_parts_mut 9 (0.1%) 1 (0.3%) core::sync::atomic::AtomicBool::store 9 (0.1%) 1 (0.3%) event_listener::EventListener::same_event 9 (0.1%) 1 (0.3%) std::sync::poison::Flag::get 8 (0.1%) 2 (0.7%) as core::ops::deref::Deref>::deref 8 (0.1%) 2 (0.7%) alloc::rc::is_dangling 8 (0.1%) 2 (0.7%) core::mem::forget 8 (0.1%) 1 (0.3%) as core::cmp::PartialEq>::eq 8 (0.1%) 1 (0.3%) core::sync::atomic::AtomicPtr::new 8 (0.1%) 1 (0.3%) core::sync::atomic::AtomicUsize::new 7 (0.1%) 3 (1.0%) core::mem::manually_drop::ManuallyDrop::into_inner 7 (0.1%) 1 (0.3%) <&T as core::fmt::Display>::fmt 7 (0.1%) 1 (0.3%) ::allocate 7 (0.1%) 1 (0.3%) core::sync::atomic::AtomicBool::load 6 (0.1%) 3 (1.0%) core::mem::maybe_uninit::MaybeUninit::as_mut_ptr 6 (0.1%) 2 (0.7%) alloc::sync::Arc::inner 6 (0.1%) 1 (0.3%) as core::ops::deref::DerefMut>::deref_mut 6 (0.1%) 1 (0.3%) core::alloc::layout::Layout::dangling 6 (0.1%) 1 (0.3%) core::pin::Pin

::as_mut 6 (0.1%) 1 (0.3%) core::pin::Pin

::as_ref 6 (0.1%) 1 (0.3%) core::ptr::mut_ptr::::set_ptr_value 6 (0.1%) 1 (0.3%) core::sync::atomic::AtomicI32::swap 6 (0.1%) 1 (0.3%) core::sync::atomic::AtomicPtr::load 6 (0.1%) 1 (0.3%) core::sync::atomic::AtomicUsize::fetch_add 6 (0.1%) 1 (0.3%) core::sync::atomic::AtomicUsize::fetch_sub 6 (0.1%) 1 (0.3%) core::sync::atomic::AtomicUsize::load 6 (0.1%) 1 (0.3%) core::sync::atomic::AtomicUsize::store 6 (0.1%) 1 (0.3%) event_listener::Inner::cache_ptr 6 (0.1%) 1 (0.3%) std::sync::mutex::Mutex::lock 6 (0.1%) 1 (0.3%) std::sys::unix::mutex::Mutex::lock 6 (0.1%) 1 (0.3%) std::sys::unix::mutex::Mutex::unlock 6 (0.1%) 1 (0.3%) std::thread::Thread::unpark 5 (0.1%) 3 (1.0%) as core::ops::deref::Deref>::deref 5 (0.1%) 1 (0.3%) as core::ops::deref::Deref>::deref 5 (0.1%) 1 (0.3%) as core::ops::deref::DerefMut>::deref_mut 5 (0.1%) 1 (0.3%) as core::convert::From<&mut T>>::from 5 (0.1%) 1 (0.3%) as core::convert::From>>::from 5 (0.1%) 1 (0.3%) as core::convert::From<&mut T>>::from 5 (0.1%) 1 (0.3%) >::get_unchecked_mut 5 (0.1%) 1 (0.3%) alloc::boxed::Box::into_raw 5 (0.1%) 1 (0.3%) alloc::sync::Arc::as_ptr 5 (0.1%) 1 (0.3%) alloc::sync::Arc::from_ptr 5 (0.1%) 1 (0.3%) alloc::sync::data_offset 5 (0.1%) 1 (0.3%) core::alloc::layout::Layout::align 5 (0.1%) 1 (0.3%) core::cell::UnsafeCell::into_inner 5 (0.1%) 1 (0.3%) core::cmp::impls:: for &A>::eq 5 (0.1%) 1 (0.3%) core::ptr::non_null::NonNull<[T]>::as_mut_ptr 5 (0.1%) 1 (0.3%) std::sys_common::mutex::MovableMutex::raw_lock 5 (0.1%) 1 (0.3%) std::sys_common::mutex::MovableMutex::raw_unlock 4 (0.1%) 2 (0.7%) core::ptr::eq 4 (0.1%) 1 (0.3%) ::deref_mut 4 (0.1%) 1 (0.3%) alloc::sync::Arc::from_inner 4 (0.1%) 1 (0.3%) core::cell::Cell::get 4 (0.1%) 1 (0.3%) core::num::nonzero::NonZeroUsize::new_unchecked 4 (0.1%) 1 (0.3%) core::option::Option::is_none 4 (0.1%) 1 (0.3%) core::ptr::drop_in_place> 4 (0.1%) 1 (0.3%) core::ptr::drop_in_place> 4 (0.1%) 1 (0.3%) core::ptr::drop_in_place> 4 (0.1%) 1 (0.3%) core::ptr::drop_in_place 4 (0.1%) 1 (0.3%) core::ptr::drop_in_place> 4 (0.1%) 1 (0.3%) core::ptr::drop_in_place 4 (0.1%) 1 (0.3%) std::panicking::panicking 3 (0.0%) 1 (0.3%) >::into 3 (0.0%) 1 (0.3%) ::fmt 3 (0.0%) 1 (0.3%) ::fmt 3 (0.0%) 1 (0.3%) alloc::boxed::Box::from_raw 3 (0.0%) 1 (0.3%) core::alloc::layout::Layout::size 3 (0.0%) 1 (0.3%) core::ptr::drop_in_place> 3 (0.0%) 1 (0.3%) core::ptr::drop_in_place> 3 (0.0%) 1 (0.3%) core::ptr::drop_in_place> 3 (0.0%) 1 (0.3%) core::ptr::drop_in_place> 3 (0.0%) 1 (0.3%) core::ptr::drop_in_place 3 (0.0%) 1 (0.3%) core::ptr::drop_in_place> 3 (0.0%) 1 (0.3%) core::ptr::drop_in_place>> 3 (0.0%) 1 (0.3%) core::ptr::drop_in_place 3 (0.0%) 1 (0.3%) core::ptr::mut_ptr::::add 3 (0.0%) 1 (0.3%) core::slice::::get_unchecked_mut 3 (0.0%) 1 (0.3%) core::task::wake::Context::waker 3 (0.0%) 1 (0.3%) core::task::wake::Waker::will_wake 3 (0.0%) 1 (0.3%) std::thread::panicking 2 (0.0%) 2 (0.7%) core::ptr::null_mut 2 (0.0%) 1 (0.3%) <&mut T as core::ops::deref::Deref>::deref 2 (0.0%) 1 (0.3%) <&mut T as core::ops::deref::DerefMut>::deref_mut 2 (0.0%) 1 (0.3%) core::num::::wrapping_add 2 (0.0%) 1 (0.3%) core::num::::wrapping_sub 2 (0.0%) 1 (0.3%) core::pin::Pin<&T>::get_ref 2 (0.0%) 1 (0.3%) core::pin::Pin<&mut T>::get_mut 2 (0.0%) 1 (0.3%) core::ptr::mut_ptr::::cast 2 (0.0%) 1 (0.3%) core::ptr::mut_ptr::::as_mut_ptr 1 (0.0%) 1 (0.3%) >::from 1 (0.0%) 1 (0.3%) core::mem::align_of 1 (0.0%) 1 (0.3%) core::mem::size_of 1 (0.0%) 1 (0.3%) core::num::nonzero::NonZeroUsize::get 1 (0.0%) 1 (0.3%) event_listener::Event::inner::{{closure}}