|
Aria 2.0.0
C++23 MVVM framework (C++20 minimum) — reactive, coroutine-first, ABI-layered
|
#include "aria/abi/export.hpp"#include "aria/error.hpp"#include "aria/validation_key.hpp"#include <atomic>#include <chrono>#include <concepts>#include <cstdint>#include <functional>#include <memory>#include <mutex>#include <optional>#include <ostream>#include <string>#include <string_view>#include <utility>#include <variant>#include <vector>Go to the source code of this file.
Classes | |
| struct | aria::trace::Reactive |
| struct | aria::trace::Async |
| Async lifecycle. More... | |
| struct | aria::trace::Binding |
| Binding events. More... | |
| struct | aria::trace::Command |
| Synchronous Command<Args...> events. More... | |
| struct | aria::trace::Validation |
| Validation events. More... | |
| struct | aria::trace::List |
| Observable-list mutation. More... | |
| struct | aria::TraceEvent |
| One trace event. More... | |
| class | aria::ScopedTraceSink |
| Installs a sink for the lifetime of the scope, restoring whatever was previously installed (possibly nothing) on destruction. More... | |
Namespaces | |
| namespace | aria |
| namespace | aria::trace |
Typedefs | |
| using | aria::TracePayload |
| Heterogeneous payload. Order matches TraceCategory. | |
| using | aria::TraceSink = std::function<void(const TraceEvent&)> |
| User-facing sink shape: a callable that receives every published event. | |
Enumerations | |
| enum class | aria::TraceCategory : std::uint8_t { aria::Reactive = 0 , aria::Async = 1 , aria::Binding = 2 , aria::Command = 3 , aria::Validation = 4 , aria::List = 5 } |
| Coarse subsystem label. More... | |
| enum class | aria::trace::ReactivePhase : std::uint8_t { aria::trace::FlushBegin = 0 , aria::trace::RoundBegin = 1 , aria::trace::Pull = 2 , aria::trace::SkipClean = 3 , aria::trace::Recomputed = 4 , aria::trace::RoundEnd = 5 , aria::trace::FlushEnd = 6 } |
| Reactive flush phases. More... | |
Functions | |
| std::string_view | aria::to_string (TraceCategory c) noexcept |
| void | aria::install_trace_sink (TraceSink sink) |
| Install (or replace) the global sink. | |
| void | aria::clear_trace_sink () noexcept |
| Tear down the global sink. | |
| bool | aria::has_trace_sink () noexcept |
| True iff a sink is currently installed. | |
| void | aria::publish_trace_unchecked (const TraceEvent &event) noexcept |
| Publish an already-built event using one owning sink snapshot. | |
| void | aria::publish_trace (const TraceEvent &event) noexcept |
| Publish an already-built event. | |
| template<detail::TracePayloadType Payload> | |
| void | aria::publish_trace_unchecked (TraceCategory category, Payload payload, std::optional<::aria::Error > error=std::nullopt) |
| Build an event after taking one owning sink snapshot. | |
| template<detail::TracePayloadType Payload> | |
| void | aria::publish_trace (TraceCategory category, Payload payload, std::optional<::aria::Error > error=std::nullopt) |
| Convenience form for callers that already have a payload. | |