LCOV - code coverage report
Current view: top level - libs/utils/src - id.rs (source / functions) Coverage Total Hit
Test: 2620485e474b48c32427149a5d91ef8fc2cd649e.info Lines: 85.7 % 244 209
Test Date: 2025-05-01 22:50:11 Functions: 43.4 % 173 75

Function Name Sort by function name Hit count Sort by function hit count
<<utils::id::Id as serde::de::Deserialize>::deserialize::IdVisitor as serde::de::Visitor>::expecting 0
<<utils::id::TenantTimelineId as serde::de::Deserialize>::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::<_> 0
<::deserialize::__Field as serde::de::Deserialize>::deserialize::> 0
<::deserialize::__FieldVisitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_map::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::> 0
<<utils::id::TimelineId as serde::de::Deserialize>::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut bincode::de::Deserializer>, bincode::config::WithOtherIntEncoding, bincode::config::int::FixintEncoding>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::trailing::AllowTrailing>, bincode::config::limit::Infinite>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut serde_json::de::Deserializer>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut serde_json::de::Deserializer>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut serde_json::de::Deserializer> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut serde_json::de::Deserializer> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::>>>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_> 0
<u128 as core::convert::From<utils::id::Id>>::from 0
<u128 as core::convert::From<utils::id::TenantId>>::from 0
>::from 0
>::from 0
<utils::id::Id as core::convert::AsRef<[u8]>>::as_ref 0
<utils::id::NodeId as core::str::traits::FromStr>::from_str 0
<utils::id::TenantTimelineId as core::str::traits::FromStr>::from_str 0
<utils::id::TenantTimelineId as core::str::traits::FromStr>::from_str::{closure#0} 0
<utils::id::TenantTimelineId as core::str::traits::FromStr>::from_str::{closure#1} 0
<utils::id::TimelineId as core::convert::TryFrom<core::option::Option<&str>>>::try_from::{closure#0} 0
utils::id::tests::test_id_bincode_serde 1
utils::id::tests::test_id_serde_human_readable 1
utils::id::tests::test_id_serde_non_human_readable 1
utils::id::tests::test_tenant_id_bincode_serde 1
utils::id::tests::test_timeline_id_bincode_serde 1
<utils::id::NodeId as serde::de::Deserialize>::deserialize::<_>::{closure#0} 3
::deserialize::<&mut serde_json::de::Deserializer>::{closure#0} 0
::deserialize::<_>::{closure#0} 0
::deserialize::>::{closure#0} 0
::deserialize::>::{closure#0} 0
::deserialize::>::{closure#0} 0
::deserialize::>::{closure#0} 0
::deserialize::>::{closure#0} 0
::deserialize::::{closure#0} 0
::deserialize::>>>>>::{closure#0} 0
::deserialize::::{closure#0} 0
::deserialize::<&mut serde_json::de::Deserializer>::{closure#0} 1
::deserialize::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>>::{closure#0} 2
<utils::id::Id>::as_arr 9
<utils::id::TenantId>::as_arr 9
::as_arr 4
::as_arr 5
<<utils::id::TenantId as serde::de::Deserialize>::deserialize::__Visitor as serde::de::Visitor>::expecting 12
<::deserialize::__Visitor as serde::de::Visitor>::expecting 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut bincode::de::Deserializer>, bincode::config::WithOtherIntEncoding, bincode::config::int::FixintEncoding>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::trailing::AllowTrailing>, bincode::config::limit::Infinite>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut serde_json::de::Deserializer>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut serde_json::de::Deserializer>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut serde_json::de::Deserializer> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<&mut serde_json::de::Deserializer> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::>>>>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct::>> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct:: 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_seq::<_> 0
<::deserialize::__Visitor as serde::de::Visitor>::visit_newtype_struct:: 12
<utils::id::Id>::from_slice 14
<utils::id::TenantId>::from_slice 14
::from_slice 7
::from_slice 7
<utils::id::TimelineId as hex::FromHex>::from_hex::<_> 22
::from_hex::<&alloc::string::String> 0
::from_hex::<_> 0
::from_hex::<&str> 4
::from_hex::<&str> 4
::from_hex::<&[u8]> 14
<utils::id::TimelineId as core::convert::TryFrom<core::option::Option<&str>>>::try_from 48
<utils::id::TenantTimelineId as core::fmt::Display>::fmt 51
<utils::id::TenantId as core::convert::AsRef<[u8]>>::as_ref 56
>::as_ref 28
>::as_ref 28
<utils::id::NodeId as core::fmt::Display>::fmt 232
<utils::id::TenantId>::from_array 412
::from_array 49
::from_array 363
<utils::id::TenantTimelineId>::generate 513
<<utils::id::Id as serde::de::Deserialize>::deserialize::IdVisitor as serde::de::Visitor>::visit_str::<_> 1623
<::deserialize::IdVisitor as serde::de::Visitor>::visit_str::<_> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_str::> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_str:: 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_str:: 1
<::deserialize::IdVisitor as serde::de::Visitor>::visit_str:: 245
<::deserialize::IdVisitor as serde::de::Visitor>::visit_str:: 1377
<utils::id::Id>::generate 10073
<utils::id::TenantId>::generate 10073
::generate 2434
::generate 7639
<<utils::id::Id as serde::de::Deserialize>::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<_> 15092
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<&mut serde::de::value::SeqDeserializer, serde_json::error::Error>> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<&mut serde::de::value::SeqDeserializer, serde_json::error::Error>> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<&mut serde_json::value::de::SeqDeserializer> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<<&mut bincode::de::Deserializer<_, _> as serde::de::Deserializer>::deserialize_tuple::Access>, bincode::config::WithOtherIntEncoding, bincode::config::int::FixintEncoding>>> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<::deserialize_tuple::PairDeserializer> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<_> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::>> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::>> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::>>>>> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::>> 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq:: 0
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<&mut serde_assert::de::SeqAccess> 1
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<<&mut bincode::de::Deserializer<_, _> as serde::de::Deserializer>::deserialize_tuple::Access, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 4
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<<&mut bincode::de::Deserializer<_, _> as serde::de::Deserializer>::deserialize_tuple::Access, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 63
<::deserialize::IdVisitor as serde::de::Visitor>::visit_seq::<<&mut bincode::de::Deserializer<_, _> as serde::de::Deserializer>::deserialize_tuple::Access, bincode::config::int::FixintEncoding>, bincode::config::trailing::AllowTrailing>, bincode::config::limit::Infinite>>> 15024
<utils::id::Id as serde::de::Deserialize>::deserialize::<_> 16715
::deserialize::<&mut bincode::de::Deserializer>, bincode::config::WithOtherIntEncoding, bincode::config::int::FixintEncoding>>> 0
::deserialize::<&mut serde_json::de::Deserializer>> 0
::deserialize::<&mut serde_json::de::Deserializer>> 0
::deserialize::<_> 0
::deserialize::> 0
::deserialize::>>>>> 0
::deserialize::>> 0
::deserialize:: 0
::deserialize::<&mut serde_assert::de::Deserializer> 2
::deserialize::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 4
::deserialize::> 12
::deserialize::> 24
::deserialize::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 63
::deserialize:: 193
::deserialize::<&mut serde_json::de::Deserializer> 217
::deserialize:: 245
::deserialize::<&mut serde_json::de::Deserializer> 451
::deserialize::> 480
::deserialize::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::trailing::AllowTrailing>, bincode::config::limit::Infinite>>> 15024
<utils::id::TenantTimelineId>::empty 26238
<utils::id::Id as serde::ser::Serialize>::serialize::<_> 29066
::serialize::<&mut bincode::ser::SizeChecker<&mut bincode::config::WithOtherLimit, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 0
::serialize::<&mut bincode::ser::SizeChecker<&mut bincode::config::WithOtherLimit, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 0
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec, serde_json::ser::PrettyFormatter>> 0
::serialize::<&mut serde_json::ser::Serializer<&mut http_utils::endpoint::ChannelWriter>> 0
::serialize::<&mut serde_json::ser::Serializer<&mut std::io::buffered::bufwriter::BufWriter<&mut camino_tempfile::file::NamedUtf8TempFile>>> 0
::serialize::<_> 0
::serialize:: 0
::serialize::<&serde_assert::ser::Serializer> 2
::serialize::<&mut bincode::ser::Serializer<&mut alloc::vec::Vec, bincode::config::WithOtherLimit, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 4
::serialize::<&mut bincode::ser::SizeChecker<&mut bincode::config::WithOtherIntEncoding, bincode::config::int::FixintEncoding>>> 4
::serialize::<&mut bincode::ser::Serializer<&mut alloc::vec::Vec, bincode::config::WithOtherLimit, bincode::config::int::FixintEncoding>, bincode::config::limit::Infinite>>> 51
::serialize::<&mut bincode::ser::SizeChecker<&mut bincode::config::WithOtherIntEncoding, bincode::config::int::FixintEncoding>>> 51
::serialize::, serde_json::ser::CompactFormatter>> 72
::serialize::<&mut bincode::ser::Serializer<&mut >::try_from::Crc32Sink, bincode::config::WithOtherIntEncoding, bincode::config::int::FixintEncoding>>> 180
::serialize:: 192
::serialize::<&mut serde_json::ser::Serializer>> 480
::serialize::<&mut serde_json::ser::Serializer> 2880
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 3166
::serialize::<&mut bincode::ser::Serializer<&mut pageserver::virtual_file::owned_buffers_io::aligned_buffer::buffer_mut::AlignedBufferMut>, bincode::config::WithOtherIntEncoding, bincode::config::int::FixintEncoding>>> 21984
<utils::id::TenantId as core::str::traits::FromStr>::from_str 42467
::from_str 21109
::from_str 21358
<utils::id::Id as core::str::traits::FromStr>::from_str 44090
<utils::id::Id as hex::FromHex>::from_hex::<&str> 44112
::from_hex::<&alloc::string::String> 0
::from_hex::<&[u8]> 14
::from_hex::<&str> 44098
<utils::id::TenantTimelineId>::new 47541
<utils::id::Id as core::fmt::Debug>::fmt 69090
<utils::id::TenantId as core::fmt::Debug>::fmt 69090
::fmt 459
::fmt 68631
<utils::id::TenantId as core::convert::From<[u8; 16]>>::from 70846
>::from 35284
>::from 35562
<utils::id::Id as core::convert::From<[u8; 16]>>::from 96026
<utils::id::TenantId as core::fmt::Display>::fmt 372900
::fmt 146021
::fmt 226879
<utils::id::Id as core::fmt::Display>::fmt 379691
<utils::id::Id>::hex_encode 448781

Generated by: LCOV version 2.1-beta