|
stlab 2.3.0
Modern, modular C++ algorithms, data structures, and concurrency primitives
|
| Nstlab | |
| Nunsafe | |
| Cset_next_fn< detail::forest_iterator< T > > | |
| Cset_next_fn< child_iterator< I > > | |
| Cset_next_fn | Hook for intrusive iterators: specialize to set the successor of the node at x to y |
| Nforests | |
| Ctranscribe_iterator | Output iterator that inserts projected values into a forest (or similar container) |
| Csender | |
| Creceiver | Receiving end of a CSP channel |
| Cchannel_error | Exception type for channel usage errors (broken channel, process already running, etc.) |
| Cidentity | |
| Cresult_of_ | |
| Cresult_of_< R(Args...)> | |
| Cfirst_ | |
| Cargument_of | |
| Cargument_of< R(Arg)> | |
| Cunordered_t | Merge strategy for merge_channel: invoke the process in arbitrary order as values arrive |
| Cround_robin_t | Merge strategy for merge_channel: round-robin among upstream senders |
| Czip_with_t | Merge strategy for merge_channel / zip_with: wait for one value from each upstream, then invoke with the full argument set |
| Cbuffer_size | Per-process input queue capacity for flow control (combine with a process via operator&) |
| Csender< T, enable_if_copyable< T > > | Sending end of a CSP channel (copyable T) |
| Csender< T, enable_if_not_copyable< T > > | Sending end of a CSP channel (move-only T; not copyable) |
| Cfunction_process | Adapts a std::function into a channel process with await / yield / state |
| Cfunction_process< R(Args...)> | Function-object process: binds arguments in await, runs the call in yield |
| Cexecutor | Wraps an executor_t for use with operator& |
| Cexecutor_task_pair | Executor plus callable, produced by executor & f (used by futures and channels) |
| Cvoid_to_monostate | Maps void to std::monostate for uniform future result storage; other types unchanged |
| Cfuture_error | Exception thrown when a future-related contract is violated (e.g. broken_promise, no_state) |
| Cpackaged_task | Invocable that completes a future when called with arguments of type Args...; created by package() |
| Cfuture | One-shot asynchronous result: holds a value or exception produced by a promise or packaged_task |
| Cfuture< T, enable_if_copyable< void_to_monostate_t< T > > > | Consumer side of a one-shot result (copyable T) |
| Cfuture< T, enable_if_not_copyable< void_to_monostate_t< T > > > | Consumer side of a one-shot result (non-copyable T). Use get_ready() or get_try(); then/recover only on rvalue |
| Cmake_when_any | Helper to implement when_any for result type T |
| Cmake_when_any< void > | Helper to implement when_any for void results |
| Cprogress_tracker | Tracks how many wrapped tasks are in flight and how many have completed |
| Cserial_queue_t | Executor wrapper that runs enqueued tasks serially on top of e |
| Ctask_ | Type-erased, move-only callable with signature R(Args...) (or noexcept variant) |
| Cnoexcept_deducer | |
| Cnoexcept_deducer< T, R(Args...)> | |
| Cnoexcept_deducer< T, R(Args...) noexcept > | |
| Cbool_pack | |
| Csmart_test | Trait adapter; specialize for types where std::is_copy_constructible is wrong |
| Cvoider | |
| Cnonesuch | |
| Cdetector | |
| Cdetector< Default, void_t< Op< Args... > >, Op, Args... > | |
| Cplaceholder | |
| Cremove_placeholder | |
| Cfunction | |
| Cchild_iterator | Iterator over the child sequence of a node: adapts a fullorder iterator to visit only immediate children (skipping descendants) |
| Cedge_iterator | Fullorder iterator restricted to a single edge kind: visits only leading or trailing positions (e.g. preorder vs. postorder when Edge is fixed) |
| Cfilter_fullorder_iterator | Fullorder iterator that visits only positions whose values satisfy predicate P (skipping others by advancing through the underlying fullorder sequence) |
| Creverse_fullorder_iterator | Reverses the direction of a fullorder walk while preserving edge semantics (bidirectional) |
| Cdepth_fullorder_iterator | Fullorder iterator that tracks depth in the tree as it advances or retreats |
| Cchild_adaptor | Presents the children of a node (given by a fullorder iterator into forest) as a small sequence-like interface: front / back / push_front / push_back / pop_front / pop_back |
| Cforest | Hierarchical, node-based container: a forest (ordered sequence of trees) with fullorder iterators and child views |
| Cforest_range | Half-open range [begin, end) of forest iterators; used by child_range, preorder_range, etc |
| Cunwrap_reference | Type alias: T, or the referent type if T is std::reference_wrapper<U> |
| Cunwrap_reference< std::reference_wrapper< T > > | |
| Cis_reference_wrapper | |
| Cis_reference_wrapper< std::reference_wrapper< T > > | |
| Cannotate_counters | Shared counters for annotate special-member and comparison instrumentation |
| Cannotate | Test type that counts special-member and comparison operations via annotate_counters |
| Cregular | Regular type that logs lifetime and comparison events to std::cout |
| Cmove_only | Move-only polymorphic test type with equality comparison |
| Cindex_sequence_cat | |
| Cindex_sequence_cat< std::index_sequence< N1... >, std::index_sequence< N2... > > | |
| Cindex_sequence_to_array | |
| Cindex_sequence_to_array< std::index_sequence< N... > > | |
| Cindex_sequence_transform | |
| Cindex_sequence_transform< Seq, F, Index, 0 > | |
| Cindex_sequence_transform< Seq, F, Index, 1 > |