Skip to main content

IsCommandHandlerLike.ixx File

Concept constraining types that can handle specific commands. More...

Included Headers

#include <concepts>

Namespaces Index

namespacehelios
namespaceengine

Main engine module aggregating core infrastructure and game systems. More...

namespacecommon

Shared type definitions, concepts, and tags used across engine subsystems. More...

namespaceconcepts

Compile-time concepts for engine role classification and capability detection. More...

Description

Concept constraining types that can handle specific commands.

File Listing

The file content with the documentation metadata removed is:

1/**
2 * @file IsCommandHandlerLike.ixx
3 * @brief Concept constraining types that can handle specific commands.
4 */
5module;
6
7#include <concepts>
8
9export module helios.engine.common.concepts.IsCommandHandlerLike;
10
12
13 /**
14 * @brief Constrains T to objects that provide a submit method for specified command types.
15 *
16 * @see CommandHandlerRegistry
17 * @see ResourceRegistry
18 */
19 template<typename OwningT, typename... CommandType>
20 concept IsCommandHandlerLike = (requires(OwningT& owner, const CommandType& cmd) {
21 { owner.submit(cmd) } noexcept -> std::same_as<bool>;} && ...);
22}

Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.15.0.