|
JH-Toolkit v1.4.1
An engineering-oriented C++20 toolkit with duck-typed concepts, static design, async coroutines, and semantic containers — header-only, RTTI-free, and concurrency-friendly.
|
Compile-time constraint and validation utilities for jh::sync::ipc.
More...
Functions | |
| template<jh::meta::TStr S, std::uint64_t MaxLen = max_name_length> | |
| consteval bool | valid_object_name () |
| Validate compile-time IPC object name (for semaphores, shared memory, etc.). | |
| template<jh::meta::TStr S> | |
| consteval bool | valid_relative_path () noexcept |
| Compile-time validation for POSIX-style relative paths. | |
Variables | |
| constexpr std::uint64_t | max_name_length = 128 |
Compile-time constraint and validation utilities for jh::sync::ipc.
This namespace provides consteval-based helpers used to validate IPC object names and POSIX-style relative paths at compile time. It is an internal support layer and not intended for direct runtime use.
|
consteval |
Validate compile-time IPC object name (for semaphores, shared memory, etc.).
[A-Za-z0-9_.-]. S — compile-time string representing base name. MaxLen — optional override for system-specific maximum name length. true if the name is valid, otherwise false.
|
constevalnoexcept |
Compile-time validation for POSIX-style relative paths.
'/'). "./" segments. ".." segments: JH_INTERPROCESS_ALLOW_PARENT_PATH == 0 → forbidden. JH_INTERPROCESS_ALLOW_PARENT_PATH == 1 → leading "../" allowed but cannot occupy entire path, and no ".." after content begins. [A-Za-z0-9_.-/].