LCOV - code coverage report
Current view: top level - libs/utils/src - id.rs (source / functions) Coverage Total Hit
Test: aca806cab4756d7eb6a304846130f4a73a5d5393.info Lines: 85.7 % 244 209
Test Date: 2025-04-24 20:31:15 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 92
>::as_ref 46
>::as_ref 46
<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::<_> 1815
<::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:: 1569
<utils::id::Id>::generate 10061
<utils::id::TenantId>::generate 10061
::generate 2434
::generate 7627
<<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::<_> 16907
::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::<&mut serde_json::de::Deserializer> 217
::deserialize:: 217
::deserialize:: 245
::deserialize::<&mut serde_json::de::Deserializer> 451
::deserialize::> 648
::deserialize::<&mut bincode::de::Deserializer, bincode::config::int::FixintEncoding>, bincode::config::trailing::AllowTrailing>, bincode::config::limit::Infinite>>> 15024
<utils::id::TenantTimelineId>::empty 23757
<utils::id::Id as serde::ser::Serialize>::serialize::<_> 29241
::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:: 216
::serialize::<&mut serde_json::ser::Serializer>> 648
::serialize::<&mut serde_json::ser::Serializer> 2880
::serialize::<&mut serde_json::ser::Serializer<&mut alloc::vec::Vec>> 3173
::serialize::<&mut bincode::ser::Serializer<&mut pageserver::virtual_file::owned_buffers_io::aligned_buffer::buffer_mut::AlignedBufferMut>, bincode::config::WithOtherIntEncoding, bincode::config::int::FixintEncoding>>> 21960
<utils::id::TenantId as core::str::traits::FromStr>::from_str 38347
::from_str 19049
::from_str 19298
<utils::id::Id as core::str::traits::FromStr>::from_str 40162
<utils::id::Id as hex::FromHex>::from_hex::<&str> 40184
::from_hex::<&alloc::string::String> 0
::from_hex::<&[u8]> 14
::from_hex::<&str> 40170
<utils::id::TenantTimelineId>::new 43000
<utils::id::TenantId as core::convert::From<[u8; 16]>>::from 64912
>::from 32317
>::from 32595
<utils::id::Id as core::fmt::Debug>::fmt 69090
<utils::id::TenantId as core::fmt::Debug>::fmt 69090
::fmt 459
::fmt 68631
<utils::id::Id as core::convert::From<[u8; 16]>>::from 90080
<utils::id::TenantId as core::fmt::Display>::fmt 370785
::fmt 145043
::fmt 225742
<utils::id::Id as core::fmt::Display>::fmt 377775
<utils::id::Id>::hex_encode 446865

Generated by: LCOV version 2.1-beta