|
Common System 0.2.0
Common interfaces and patterns for system integration
|
Adapter traits and base class for type-erased cross-system wrappers. More...
#include <atomic>#include <memory>#include <optional>#include <stdexcept>#include <string>#include <type_traits>

Go to the source code of this file.
Classes | |
| struct | kcenon::common::adapters::adapter_traits< T > |
| Primary adapter_traits template for value types. More... | |
| struct | kcenon::common::adapters::adapter_traits< std::shared_ptr< T > > |
| Specialization for std::shared_ptr. More... | |
| struct | kcenon::common::adapters::adapter_traits< std::unique_ptr< T, Deleter > > |
| Specialization for std::unique_ptr. More... | |
| class | kcenon::common::adapters::adapter_base |
| Base class for adapter interface to eliminate RTTI dependency. More... | |
| class | kcenon::common::adapters::adapter< T, Traits > |
| Unified adapter template for wrapping values or smart pointers. More... | |
| class | kcenon::common::adapters::interface_adapter< Interface, Implementation > |
| Interface adapter with type safety and depth tracking. More... | |
| class | kcenon::common::adapters::adapter_factory |
| Smart adapter factory that avoids unnecessary wrapping. More... | |
Namespaces | |
| namespace | kcenon |
| namespace | kcenon::common |
| Core interfaces. | |
| namespace | kcenon::common::adapters |
Functions | |
| template<typename T > | |
| kcenon::common::adapters::adapter (T) -> adapter< T > | |
| template<typename T > | |
| kcenon::common::adapters::adapter (std::shared_ptr< T >) -> adapter< std::shared_ptr< T > > | |
| template<typename T , typename D > | |
| kcenon::common::adapters::adapter (std::unique_ptr< T, D >) -> adapter< std::unique_ptr< T, D > > | |
| template<typename T , typename... Args> | |
| auto | kcenon::common::adapters::make_adapter (Args &&... args) |
| Factory function to create adapter with in-place construction. | |
| template<typename T , typename... Args> | |
| auto | kcenon::common::adapters::make_shared_adapter (Args &&... args) |
| Factory function to create adapter wrapping shared_ptr. | |
| template<typename T , typename... Args> | |
| auto | kcenon::common::adapters::make_unique_adapter (Args &&... args) |
| Factory function to create adapter wrapping unique_ptr. | |
| template<typename T , typename Interface > | |
| std::shared_ptr< T > | kcenon::common::adapters::safe_unwrap (std::shared_ptr< Interface > ptr) |
| Helper function to safely unwrap an adapter. | |
| template<typename Interface > | |
| bool | kcenon::common::adapters::is_adapter (std::shared_ptr< Interface > ptr) |
| Check if an interface pointer is actually an adapter. | |
| template<typename Interface , typename Impl > | |
| std::shared_ptr< Interface > | kcenon::common::adapters::make_interface_adapter (std::shared_ptr< Impl > impl) |
| Convenience function for creating smart adapters. | |
| template<typename T , typename Interface > | |
| std::shared_ptr< T > | kcenon::common::adapters::unwrap_adapter (std::shared_ptr< Interface > ptr) |
| Convenience function for unwrapping adapters. | |
Variables | |
| template<typename T , typename Interface > | |
| constexpr bool | kcenon::common::adapters::implements_interface_v |
| Type trait to check if a type implements an interface. | |
Adapter traits and base class for type-erased cross-system wrappers.
Definition in file adapter.h.