Concepts | |
| concept | zxfoundation::base::in_state |
| Concept: T is in exactly state S. | |
| concept | zxfoundation::base::state_at_least |
| Concept: T is in state S or later. | |
Data Structures | |
| class | zxfoundation::base::typestate< State > |
| Zero-overhead typestate carrier. More... | |
Enumerations | |
| enum class | zxfoundation::base::lifecycle_state : u8 { embryo = 0 , sealed = 1 , active = 2 , suspended = 3 , dying = 4 , destroyed = 5 } |
| Unified lifecycle states for ALL typestate-tracked resources. More... | |
Functions | |
| template<lifecycle_state Query, lifecycle_state Actual> | |
| constexpr auto | zxfoundation::base::is_state (const typestate< Actual > &) noexcept -> bool |
| Compile-time query: is this typestate-carrying type in state S? | |
| constexpr auto | zxfoundation::base::lifecycle_state_name (lifecycle_state s) noexcept -> std::string_view |
| Return the ASCII name of a lifecycle_state value. | |
| auto | operator= (const typestate &)=delete |
| auto | operator= (typestate &&) noexcept -> typestate &=default |
| typestate (const typestate &)=delete | |
| typestate (typestate &&) noexcept=default | |
Variables | |
| constexpr lifecycle_state | zxfoundation::base::lifecycle_fresh = lifecycle_state::embryo |
| Backward-compatible aliases for subsystems still using the old naming convention during migration. | |
| constexpr lifecycle_state | zxfoundation::base::lifecycle_ready = lifecycle_state::active |
| static constexpr lifecycle_state | state = State |
Files | |
| file | zxfoundation/base/typestate.cxxm |
| Typestate carrier — compile-time lifecycle enforcement. | |