▼NChusov | Basic chsvlib namespace |
►NExceptions | A namespace for chsvlib generic exception classes and for special helper function |
CException | Defines a class of objects specifying various exceptions with extended support for description formatting. |
►CExceptionWithGenericCode | A class template specifying a generic exception which has a corresponding integral error code |
Cnoprintf | An empty type defining an overload of SetCodeAndDescription method that discards Printf formatting during construction of an exception description |
►CChsvCodeExceptionTempl | A template defining classes depending on the specified chsvlib error code. |
Cnoformat | A type used to overload protected formatting methods in order to turn off the Printf formatting |
COutOfMemoryException | Insufficient memory exception |
CInvalidParameterException | Invalid parameter exception |
CInsufficientBufferException | Insufficient buffer exception |
COutOfRangeException | Out of range exception |
CInitializationFailureException | Initialization failure exception |
CNotInitializedException | Reading an uninitialized resource exception |
CAlreadyInitializedException | Initializing an already initialized resource exception |
CInvalidVersionException | Improper version exception |
CNotFoundException | Item not found exception |
CAlreadyExistsException | Resource already exists exception |
CInvalidResourceException | Invalid resource exception |
CAccessDeniedException | Access denied exception |
CStorageFullnessException | Storage full exception |
CInvalidCharSequenceException | Invalid multibyte character sequence exception |
COperationCancelledException | Operation is cancelled exception |
CNameTooLongException | Name is too long exception |
CPossibleDeadlockException | Possible deadlock exception |
CTimeoutException | Timeout exception |
COwnerDeadException | A thread owning a resource is dead |
CUnsupportedCallException | Unsupported (unimplemented) call exception |
CArithmeticOverflowException | Arithmetic overflow exception |
CStackOverflowException | Stack overflow exception |
CUnknownException | Unknown exception corresponding to an unknown error code |
CPlatformException | A class template designed specifically for using with externally defined error codes |
Ccode_based_exception | Defines a nested type alias to a chsvlib exception depending on the chsvlib error code |
Cnested_exception | Together with throw_with_nested and rethrow_if_nested implements a behaviour of the standard C++11 nested exceptions mechanism as defined by the std::nested_exception class and by the std::throw_with_nested and std::rethrow_if_nested functions respectively. |
►NExecutionControl | A namespace of execution control facilities |
Cshared_mutex | An implementation of C++17 shared_mutex primitive for read-write lock. See C++17 shared_mutex and N2406 |
Cshared_lock | Implements std::shared_lock interface of C++14 |
Clatch | Implements a single-use barrier synchronization |
Cbarrier_default_completion | Default class of a completion routine object called by a default instantiation of barrier upon opening |
Cbarrier | Implements a reusable barrier synchronization primitive |
►NMath | A namespace containing mathematical functions and components |
Cdivmod_value | Performs compile time calculation of the division of integral values, specified, together with specific type, as the template arguments. The result is a pair of a quotient and a remainder |
Cceildiv_value | Performs compile time calculation of division of the specified template arguments with ceiling. The result is written to a value field |
Crank | Calculates a rank of an array of type T at a compile time |
Carray_size | Calculates a size of a one-dimensional vector. Can be used instead of array_size C macro |
Cminmax | Statically chooses minimum and maximum values from a set of values |
Clogical_and | Statically calculates a result of the logical AND operation upon the template parameters |
Clogical_or | Statically calculates a result of the logical OR operation upon the template parameters |
►Cmake_Nary_type_template | Produces a new variadic template which accept a specified number of type parameters |
Cresult | A new template instantiating the base template of make_Nary_type_template by insertion of its parameters to a position specified with the parameters of make_Nary_type_template |
Cis_satisfied_by_all | Checks if every type in a pack satisfies a specified compile-time predicate |
Cis_satisfied_by_one | Checks if at least one type in a pack satisfies a specified compile-time predicate |
Cgcd_value | Calculates the greatest common divisor of multiply template arguments at a compile time |
Cget_bit_mask_by_indices_value | Defines a static data member holding an integral value which specifies a mask of bits set with respect to indices specified as the template parameters |
Cinverse_bits_value | Defines a value field resolving to an integral value of unsigned type which holds an integral parameter Value with inverted bits, as specified by integral bit indices in a template parameter list |
Cadditive_group_algebraic_tag | A containing class implements an algebraic group over addition |
Crng_algebraic_tag | A containing class satisfies the rng_concept |
Cring_algebraic_tag | A containing class satisfies the ring_concept |
Ccommutative_ring_algebraic_tag | A containing class satisfies the commutative_ring_concept |
Cdivision_ring_algebraic_tag | A containing class satisfies the division_ring_concept |
Cfield_algebraic_tag | A containing class satisfies the field_concept |
Cnot_an_algebraic_type_tag | An explicit tag declaring that an enclosing type is not algebraic, which is useful when the type derives from an algebraic type |
Calgebraic_traits | Is a trait class that provides uniform interface to assess whether a type implements an abstract algebra structure, such as Rng, ring, field, etc |
Cmatrix_always_parallel | A policy for implementing matrix operations for running in multiple SMP threads where possible |
Cmatrix_always_sequential | A policy for implementing matrix operations for running in a single thread only |
Cmatrix_dynamically_customizable_parallelism | A policy for implementing matrix operations for running both in a single-thread-only mode and in parallel mode depending on a dynamically provided value of a special flag set by the Matrix::set_parallel_mode and Matrix::reset_parallel_mode methods of the matrix instantiated for this policy |
Cmatrix_execution_policy | Encapsulates statically defined policy for an implementation of the Matrix class |
Cmatrix_execution_policy_traits | Provides the same fields as the matrix_execution_policy class does, but for an arbitriary Policy class specifying a matrix policy. The Policy class definition is allowed to skip policy specifications in order to specify default behaviour |
Ccommon_policy | Provides a field type designating common policy for the policies given by policy_t parameter pack |
Cis_matrix | Performs compile time check whether the type T is a matrix type |
Cmatrix_column | Implements a column of a matrix with direct access to the elements of the matrix |
CMatrix | A class template for matrices of elements of various types and semantics, including types which do not have any numeric semantics, as well as types satisfying algebraic_type requirements |
CFixedMatrix | Specializes the Matrix template for fixed-sized matrices |
►NMemory | A namespace of functions and components used to work with memory |
CDefaultResourceHandleChecker | The default functor for checking if a handle to a resource should be closed by an instance of the AutoResource owning the handle |
CAutoResource | Manages the specified resource handles, providing a limited garbage-collection facility |
CC_auto_ptr | A helper class for defining pointers managed automatically with a limited garbage-collecting facility implemented over the functions of the Chusov::Memory namespace |
CAutoData | A template of a class specifying std::unique_ptr to manage pointers allocated using one of the allocation functions of the chsvmem.h header, such as AllocateData or AllocateString, automatically deallocating memory pointed to by managed pointers when necessary. pointers using the FreeData function |
CAutoDataSec | A template of a class specifying std::unique_ptr to manage pointers to sensitive data allocated using one of the allocation functions of the chsvmem.h header, such as AllocateData or AllocateString, deallocating memory, pointed to by the managed pointers, using the SecureFreeData function randomizing data before the actual deallocation |
►Craw_delete_t | A type of a deleter object used with smart pointers to a raw memory block allocated using the global ::operator new function. When the managed memory is released these smart pointers call ::operator delete to perform the cleanup |
Crebind | Defines an instance of the deleter template for other types of values |
Citerator_range | An auxiliary class for a range given by a pair of iterators |
►Callocator | A class template implementing behavior of the standard allocator interface using the memory management functions of the Chusov::Memory namespace |
Crebind | |
►Callocator< void > | A Chusov::Memory::allocator class template specialization for pointers of void* type |
Crebind | |
Csecure_allocator | A class template redefining the behavior of the Chusov::Memory::allocator class template so that the deallocation function randomizes the memory before the deallocation |
Cgenerating_input_iterator | Implements semantics of an input iterator to providing access to elements generated by a given functional object |
Ctransforming_iterator | |
Csubtuple | Defines a type field which is an alias for a subtuple consisting of elements within the specified range of a given tuple |
Craw_pointer_iterator | |
Craw_pointer_iterator< T * > | An wrapper over a raw pointer considered as an iterator used to resolve security warnings produced by Microsoft C++ compilers. The class is defined independently of a compiler used |
Csbo_vector | Implements a vector with customizable small buffer optimization |
►NString | A namespace of string manipulation functions and classes |
CTAG_DESCRIPTION_PARAM | A structure defining a set of parameters for the AllocateAndFormatStringByTagsIndirect() "AllocateAndFormatStringByTagsIndirect" function to specify format of the output string with a given set of tags |
CAutoCString | A template of a class specifying std::unique_ptr to manage multibyte and wide C strings allocated using one of the allocation functions of the chsvmem.h header, such as AllocateString, AllocateAndFormatString or AllocateAndFormatStringByTags. A class template instance deallocates corresponding memory using the FreeString function or its derivatives |
Cci_char_traits | Redefines the char_traits interface in order to process strings independently of character case |
Cu8_ch_data | Holds attributes, including Unicode code point, of a one multi-byte UTF-8 character with the read_u8_char_data function |
Cu8_array_from_ucp | A class template which for a given Unicode code point statically defines a constant array holding the corresponding UTF-8 code |
Cucp_literal_type | Implements a string literal of Unicode 11.0 code points |
Cfrom_chars_result | A type of the return value of the from_chars family of functions |
►NWin32 | Axillary chsvlib elements simplifying calls to Win32 API |
►NExceptions | Facility for generating exceptions Chusov::Exceptions namespace based on the Win32 error codes |
Cget_win32_error_description | A helper structure describing a type of function objects calling the Windows FormatMessage function to generate descriptions corresponding to the specified Windows error codes |
NExecutionControl | Defines auxiliary functionality easing working with Windows multitasking routines |
NGDI | Defines auxiliary functionality easing working with Windows GDI functions |
►NMemory | Win32 resource management mechanisms |
Cinvalid_handle_value_t | A class intended for using with check_handle_t and AutoHandle in order to check a managed Windows API handle for equality to INVALID_HANDLE_VALUE |
Cnull_handle_value_t | A class intended for using with check_handle_t and AutoHandle in order to check a managed Windows API handle for equality to NULL |
Ccheck_handle_t | A function object of a class template that allows specifying values, a handle to be checked against by the supplied parenthesis operator, which returns true only if the specified (as its only argument) handle is not equal to any of the template parameters |
CAutoHandle | A class defining functionality for automated management of Windows resources, described by the HANDLE values, e.g. files, processes, tokens, etc |
►NSecurity | A namespace containing mechanisms simplifying working with Windows security APIs, such as security descriptors, access control lists, tokens, etc |
Ctoken_information_type_id | Determines a type of a representation of token information as specified by a value of the standard Windows TOKEN_INFORMATION_CLASS enumeration |
Cace_type_id | A structure describing access-control type information defined by an access-control type identifier |
Cace_type | A structure describing access-control type information |
CACE_INFO | A structure template defining either granting or denying access control entry for the discretionary access control list in a high-level way: by a principal name and by corresponding access control mask |
CIErrorInfo | An interface that must be implemented by any class implementing an object to hold error information processed by the SetLastChsvErrorInformation and GetLastChsvErrorInfo |
Cchsvlib_general_category_t | A class of general chsvlib error category, which is introduced to conform std::system_error requirements |
Cidentity | |
Cis_swappable_with | C++14 compliant implementation of std::is_swappable_with from <type_traits> of C++17 |
Cis_nothrow_swappable_with | C++14 compliant implementation of std::is_nothrow_swappable_with from <type_traits> of C++17 |
Cis_swappable | C++14 compliant implementation of std::is_swappable from <type_traits> of C++17 |
Cis_nothrow_swappable | C++14 compliant implementation of std::is_swappable from <type_traits> of C++17 |
Cintegral_sequence | A type used to unpack tuples and pass its elements as a sequence of parameters via std::get <ind>(tuple_object)... . The type can be obtained at compile time using the integral_sequence_maker metafunction |
Cintegral_sequence_maker | For a given size provides a type member "type" specifying an integral sequence (inclusively starting from 0 to the sequence_size - 1) of the integral_sequence type. Used to sequentially extract parameters of a variadic template like std::tuple during a function call |
Cfunction_traits | Provides traits of a Callable type: return type, parameter types, and a number of parameters |
Cis_reference_wrapper | Checks whether a type T is an std::reference_wrapper object. Inherits from the resulting std::integral_constant instantiation |
Cis_equality_comparable | Checks whether a type T satisfies the EqualityComparable requirements |
Cis_testable_by_negation | Checks whether a type T supports an unary negation operator, that is whether for an object T x an expression !x would be well-formed and convertible to bool |
Citeratable_type_traits | If the specified type is iteratable, the class inherits members of std::iterator_traits specialized for the iterator of the specified type |
Cis_iteratable_type | Checks whether a given type is iteratable |
▼Nstd | STL namespace |
Cis_error_code_enum< ::Chusov::chsvlib_error > | |
Cis_error_condition_enum< ::Chusov::chsvlib_error > | |