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.
Loading...
Searching...
No Matches
Concepts
Here is a list of all documented concepts with brief descriptions:
[detail level 123]
 Njh
 NconceptsBehavioral concept namespace of the JH Toolkit
 Rclosable_container_forConcept checking whether a container C can be directly constructed ("closed") from a range R
 Rcollectable_container_forConcept verifying that a container C can collect elements from a range R via incremental insertion
 Ris_contiguous_reallocableConcept that constrains types usable in contiguous, reallocating containers
 Rhas_std_hashChecks whether std::hash<T> is valid and callable
 Rhas_adl_hashChecks whether a free (ADL-discoverable) hash() function exists
 Rhas_mbr_hashChecks whether a type defines a hash() member function
 Rextended_hashableConcept for types that can be hashed through any supported mechanism
 Rindirectly_readableConcept for types that can be read indirectly via dereference
 Rindirectly_writableConcept for types that support indirect write operations through dereference
 Ris_iteratorConcept for detecting iterator-like types based on behavior
 Rsentinel_forConcept for detecting sentinel-iterator compatibility
 Rinput_iteratorConcept for readable, comparable single-pass iterators
 Routput_iteratorConcept for writable single-pass iterators
 Rforward_iteratorConcept for multi-pass, readable, and self-sentinel iterators
 Rbidirectional_iteratorConcept for iterators supporting bidirectional traversal
 Rrandom_access_iteratorConcept for iterators supporting random access operations
 Rbasic_lockableConcept for basic lockable objects
 Rexcl_lockableConcept for exclusive lockable objects supporting try semantics
 Rtimed_excl_lockableConcept for timed exclusive lockable objects
 Rshared_lockableConcept for shared (reader) lockable objects
 Rtimed_shared_lockableConcept for shared lockables supporting timed acquisition
 Rmutex_likeGeneral mutex-like concept
 Rtimed_mutex_likeTimed variant of mutex_like
 Rrw_mutex_likeRead-write (RW) mutex concept
 Rrecursive_mutexConcept for counting reentrant (recursive) mutexes
 Rreentrant_mutexConcept for idempotent (structurally reentrant) mutexes
 Rreentrance_capable_mutexConcept for any mutex supporting some form of reentrance
 Rvis_function_forConcept describing the visual relation between a range and a callable
 RsequenceConcept that checks whether a type provides at least const (non-destructive) iteration
 Rtuple_likeConcept recognizing tuple-like types
 Rpair_like_forChecks whether a type P is a 2-element tuple-like whose element types exactly match K and V (after remove_cvref)
 NmetaAggregated entry point for compile-time metaprogramming utilities
 Rany_charConcept representing character-semantic 1-byte integral types
 Rtransparent_keyConcept checking whether key conversion through key_traits<K> is valid
 Rcheck_allCompile-time predicate applied to all alternatives in a variant
 NpodAggregated entry point for Plain-Old-Data and layout-stable value utilities
 Rstd_uintInternal constraint for native unsigned integer types
 Rtrivial_bytesConcept for trivially layout-compatible types (POD-compatible memory view)
 Rpod_likeConcept for types that are safe to treat as plain old data (POD)
 Rcv_free_pod_likeConcept for POD-like types that are free of const or volatile qualification
 RstreamableChecks whether a type can be streamed to std::ostream
 Rstreamable_podDebug-only constraint for POD-like types printable to std::ostream
 NtypedAggregated entry point for lightweight typing and semantic placeholder utilities
 Rmonostate_tConcept: satisfied only if T is monostate
 Rimmutable_str_compatibleConcept for types compatible with jh::immutable_str