|
Aria 2.0.0
C++23 MVVM framework (C++20 minimum) — reactive, coroutine-first, ABI-layered
|
#include <filtered_list.hpp>
Public Types | |
| using | value_type = T |
| using | Predicate = aria::inplace_function<bool(const T&), 32> |
| Owning, heap-free predicate handle. | |
| using | Signal = detail::ListSignal<T> |
Public Member Functions | |
| FilteredList (std::shared_ptr< Source > source, Predicate predicate) | |
| ~FilteredList ()=default | |
| FilteredList (const FilteredList &)=delete | |
| FilteredList & | operator= (const FilteredList &)=delete |
| std::size_t | size () const |
| bool | empty () const |
| std::shared_ptr< T > | at (std::size_t derived_index) const |
| std::vector< std::shared_ptr< T > > | snapshot () const |
| std::optional< std::size_t > | source_index_of (std::size_t derived_index) const |
| void | set_predicate (Predicate new_predicate) |
| using aria::FilteredList< T, Source >::value_type = T |
| using aria::FilteredList< T, Source >::Predicate = aria::inplace_function<bool(const T&), 32> |
Owning, heap-free predicate handle.
Captures up to 32 bytes; larger captures are a compile-time error (by design — derived list hot paths must never allocate behind the user's back).
| using aria::FilteredList< T, Source >::Signal = detail::ListSignal<T> |
|
inline |
|
default |
|
delete |
|
delete |
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |
|
inlinenodiscard |
|
inline |