|
ORIGINAL
|
Core type system foundations and concept definitions. More...
#include <type_traits>#include <concepts>#include <iosfwd>#include <functional>#include "config.h"

Go to the source code of this file.
Classes | |
| class | original::null |
| A placeholder type representing the absence of a value. More... | |
| class | original::some< true, MATCH_TYPE, OTHER_TYPE > |
| class | original::some< false, MATCH_TYPE, OTHER_TYPE > |
| class | original::indexSequence< INTS > |
| Compile-time sequence of unsigned integers. More... | |
| class | original::makeIndexSequence |
| Utility for generating index sequences. More... | |
| struct | original::functionTraits< R(*)(Args...)> |
| Specialization for function pointers. More... | |
| struct | original::functionTraits< R(Args...)> |
| Specialization for function types. More... | |
| struct | original::functionTraits< C > |
| Primary template for general callable types. More... | |
| struct | original::functionTraits< R(C::*)(Args...) const > |
| Specialization for const member function pointers. More... | |
| struct | original::functionTraits< R(C::*)(Args...)> |
| Specialization for non-const member function pointers. More... | |
Namespaces | |
| namespace | original |
| Main namespace for the project Original. | |
Concepts | |
| concept | original::NotNull |
| Ensures the parameter pack is not empty. | |
| concept | original::EnumType |
| Requires type to be an enumeration. | |
| concept | original::EnumClassType |
| Requires type to be a scoped enumeration. | |
| concept | original::EqualityComparable |
| Requires type to support equality comparison operators. | |
| concept | original::WeaklyOrdered |
| Requires type to support relational comparison operators. | |
| concept | original::PartiallyComparable |
| Requires type to support either equality or relational comparisons. | |
| concept | original::TotallyComparable |
| Requires type to support all comparison operators. | |
| concept | original::ThreeWayComparable |
| Requires type to support three-way comparison (spaceship operator). | |
| concept | original::StronglyOrdered |
| Requires type to support strong ordering via three-way comparison. | |
| concept | original::Comparable |
| concept | original::CmpTraits |
| Requires type to implement the comparable interface with compareTo method. | |
| concept | original::Printable |
| Requires type to support output stream insertion. | |
| concept | original::InputStreamable |
| Requires type to support input stream extraction. | |
| concept | original::Streamable |
| Requires type to support both input and output stream operations. | |
| concept | original::Hashable |
| Concept checking for types that can be hashed. | |
| concept | original::Equatable |
| Requires type to support equality comparison for hashing. | |
| concept | original::HashTraits |
| Requires type to implement the hashable interface with toHash method. | |
| concept | original::Callable |
| Basic concept for any callable type. | |
| concept | original::CallbackOf |
| Validates callback signature compatibility. | |
| concept | original::Predicate |
| Constraint for boolean predicate callbacks. | |
| concept | original::Compare |
| Combines Comparable and CallbackOf for comparison callbacks. | |
| concept | original::Condition |
| Constraint for predicate callbacks. | |
| concept | original::Operation |
| Constraint for mutating operations. | |
| concept | original::Transformer |
| Constraint for transformation operations. | |
| concept | original::SuperOf |
| Checks inheritance or type equality. | |
| concept | original::ExtendsOf |
| Checks derivation or type identity using std::derived_from. | |
| concept | original::ConvertibleTo |
| Checks if type is convertible to another type. | |
| concept | original::SameAs |
| Checks if two types are exactly the same. | |
| concept | original::Container |
| Basic container concept. | |
| concept | original::SequenceContainer |
| Sequence container concept. | |
Typedefs | |
| template<bool MATCH, typename MATCH_TYPE , typename OTHER_TYPE > | |
| using | original::some_t = some< MATCH, MATCH_TYPE, OTHER_TYPE >::type |
| template<u_integer N> | |
| using | original::makeReverseSequence = decltype(reverseIndexSequenceImpl(makeSequence< N >())) |
| Creates a reversed index sequence. | |
Functions | |
| template<u_integer NUM> | |
| consteval auto | original::makeSequence () noexcept |
| Creates an index sequence of given length. | |
| template<u_integer... Indices> | |
| consteval auto | original::reverseIndexSequenceImpl (indexSequence< Indices... > seq) |
| Implementation detail for reversing an index sequence. | |
Core type system foundations and concept definitions.
This header defines fundamental type traits and concepts used for template metaprogramming and interface constraints throughout the library. These concepts enforce compile-time interface requirements and enable type-safe template programming.