readcon-core 0.2.0

An oxidized single and multiple CON file reader and writer with FFI bindings for ergonomic C/C++ usage.
Documentation
{
   <rust_test_harness_thread_management_leak>
   Memcheck:Leak
   match-leak-kinds: possible
   fun:malloc
   fun:alloc
   fun:alloc_impl
   fun:allocate
   fun:{closure#0}<std::thread::Inner>
   fun:allocate_for_layout<core::mem::maybe_uninit::MaybeUninit<std::thread::Inner>, alloc::sync::{impl#14}::new_uninit::{closure_env#0}<std::thread::Inner>, fn(*mut u8) -> *mut alloc::sync::ArcInner<core::mem::maybe_uninit::MaybeUninit<std::thread::Inner>>>
   fun:new_uninit<std::thread::Inner>
   fun:_ZN3std6thread6Thread3new17h1e1b0882db767f60E
   fun:_ZN3std6thread7current12init_current17h5b86e59cf23c363bE
   fun:current_or_unnamed
   fun:_ZN3std4sync4mpmc7context7Context3new17he7c0011d1c4eac03E
   fun:__init
   fun:call_once<fn() -> core::cell::Cell<core::option::Option<std::sync::mpmc::context::Context>>, ()>
   fun:unwrap_or_else<core::cell::Cell<core::option::Option<std::sync::mpmc::context::Context>>, fn() -> core::cell::Cell<core::option::Option<std::sync::mpmc::context::Context>>>
   fun:_ZN3std3sys12thread_local6native4lazy20Storage$LT$T$C$D$GT$10initialize17ha26529760172a85fE
   fun:get_or_init<core::cell::Cell<core::option::Option<std::sync::mpmc::context::Context>>, (), fn() -> core::cell::Cell<core::option::Option<std::sync::mpmc::context::Context>>>
   fun:{closure#0}
   fun:call_once<std::sync::mpmc::context::{impl#0}::with::CONTEXT::{constant#0}::{closure_env#0}, (core::option::Option<&mut core::option::Option<core::cell::Cell<core::option::Option<std::sync::mpmc::context::Context>>>>)>
   fun:try_with<core::cell::Cell<core::option::Option<std::sync::mpmc::context::Context>>, std::sync::mpmc::context::{impl#0}::with::{closure_env#1}<std::sync::mpmc::list::{impl#3}::recv::{closure_env#1}<test::event::CompletedTest>, ()>, ()>
   fun:with<std::sync::mpmc::list::{impl#3}::recv::{closure_env#1}<test::event::CompletedTest>, ()>
   fun:_ZN3std4sync4mpmc4list16Channel$LT$T$GT$4recv17hb922e0fb59054381E
   fun:recv_deadline<test::event::CompletedTest>
   fun:recv_timeout<test::event::CompletedTest>
   fun:recv_timeout<test::event::CompletedTest>
   fun:run_tests<test::console::run_tests_console::{closure_env#2}>
   fun:_ZN4test7console17run_tests_console17hb4d9d89baee4ccdeE
   fun:test_main_with_exit_callback<test::test_main::{closure_env#0}>
   fun:_ZN4test9test_main17h0f8eb19804b2e0a0E
   fun:_ZN4test16test_main_static17h054b5c510854504eE
   fun:call_once<fn(), ()>
   fun:_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hae9dcdd392d02219E
   fun:_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hc7bab5ff1a150790E.llvm.8326145766134644374
   fun:call_once<(), (dyn core::ops::function::Fn<(), Output=i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe)>
   fun:do_call<&(dyn core::ops::function::Fn<(), Output=i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe), i32>
   fun:try<i32, &(dyn core::ops::function::Fn<(), Output=i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe)>
   fun:catch_unwind<&(dyn core::ops::function::Fn<(), Output=i32> + core::marker::Sync + core::panic::unwind_safe::RefUnwindSafe), i32>
   fun:{closure#0}
   fun:do_call<std::rt::lang_start_internal::{closure_env#0}, isize>
   fun:try<isize, std::rt::lang_start_internal::{closure_env#0}>
   fun:catch_unwind<std::rt::lang_start_internal::{closure_env#0}, isize>
   fun:_ZN3std2rt19lang_start_internal17ha8ef919ae4984948E
}