|
Container System 0.1.0
High-performance C++20 type-safe container framework with SIMD-accelerated serialization
|
Namespaces | |
| namespace | detail |
Classes | |
| class | async_container |
| Async wrapper for value_container operations. More... | |
| class | async_executor_context |
| Global executor for async operations. More... | |
| class | executor_context_guard |
| RAII guard for setting executor context. More... | |
| class | generator |
| Forward declaration of generator. More... | |
| class | task |
| Forward declaration of task. More... | |
Typedefs | |
| using | progress_callback = std::function<void(size_t bytes_processed, size_t total_bytes)> |
| Progress callback type for async file operations. | |
| using | executor_ptr = std::nullptr_t |
| Executor type for async operations. | |
Functions | |
| task< std::vector< uint8_t > > | read_file_async (std::string_view path, progress_callback callback=nullptr) |
| Read file contents asynchronously. | |
| task< bool > | write_file_async (std::string_view path, std::span< const uint8_t > data, progress_callback callback=nullptr) |
| Write data to file asynchronously. | |
| template<typename Range > | |
| generator< typename std::ranges::range_value_t< Range > > | from_range (Range &&range) |
| Create a generator from a range. | |
| template<typename T > | |
| generator< T > | take (generator< T > gen, size_t count) |
| Create a generator that yields a fixed number of elements. | |
| template<typename T > | |
| task< std::decay_t< T > > | make_ready_task (T &&value) |
| Create a task that returns a value immediately. | |
| task< void > | make_ready_task () |
| Create a task that completes immediately with no value. | |
| template<typename T > | |
| task< T > | make_exceptional_task (std::exception_ptr ex) |
| Create a task that throws an exception. | |
| template<> | |
| task< void > | make_exceptional_task< void > (std::exception_ptr ex) |
| Specialization for void. | |
Variables | |
| constexpr bool | has_coroutine_support = false |
| Check if coroutines are available at compile time. | |
| using kcenon::container::async::executor_ptr = std::nullptr_t |
Executor type for async operations.
When common_system is available, uses IExecutor interface. Otherwise, falls back to simple std::thread-based execution.
Definition at line 55 of file thread_pool_executor.h.
| using kcenon::container::async::progress_callback = std::function<void(size_t bytes_processed, size_t total_bytes)> |
Progress callback type for async file operations.
| bytes_processed | Number of bytes processed so far |
| total_bytes | Total number of bytes (0 if unknown) |
Definition at line 54 of file async_container.h.
| generator< typename std::ranges::range_value_t< Range > > kcenon::container::async::from_range | ( | Range && | range | ) |
Create a generator from a range.
| Range | The range type |
| range | The range to iterate |
Definition at line 347 of file generator.h.
| task< T > kcenon::container::async::make_exceptional_task | ( | std::exception_ptr | ex | ) |
Create a task that throws an exception.
| T | The return type of the task |
| ex | The exception pointer to throw |
Definition at line 407 of file task.h.
|
inline |
|
inline |
| task< std::decay_t< T > > kcenon::container::async::make_ready_task | ( | T && | value | ) |
Create a task that returns a value immediately.
| T | The value type |
| value | The value to return |
|
inlinenodiscard |
Read file contents asynchronously.
Reads entire file content in a worker thread.
| path | File path to read from |
| callback | Optional progress callback |
Definition at line 1000 of file async_container.h.
References kcenon::container::async::detail::make_async_awaitable().

| generator< T > kcenon::container::async::take | ( | generator< T > | gen, |
| size_t | count ) |
Create a generator that yields a fixed number of elements.
| T | The element type |
| gen | The source generator |
| count | Maximum number of elements to yield |
Definition at line 364 of file generator.h.
|
inlinenodiscard |
Write data to file asynchronously.
Writes data to file in a worker thread.
| path | File path to write to |
| data | Data to write |
| callback | Optional progress callback |
Definition at line 1040 of file async_container.h.
References kcenon::container::async::detail::make_async_awaitable().
