ALib C++ Framework
by
Library Version: 2605 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
chk_nc.hpp
Go to the documentation of this file.
1//==================================================================================================
2/// \file
3/// This header-file is part of the \aliblong.
4///
5/// Copyright 2013-2026 A-Worx GmbH, Germany.
6/// Published under #"mainpage_license".
7//==================================================================================================
8ALIB_EXPORT namespace alib {
9/// This tag-type is used across \alib to indicate that no check of the input parameters should
10/// be performed.
11/// Methods affected expose a template parameter named \p{TCheck} which usually defaults to
12/// this types' counterpart #"CHK;2".
13///
14/// For example, various methods of the \alib string types, which perform range-checks on
15/// string-indices, use this template parameter.
16/// With debug-compilations the checks are still made, and if they fail, the parameters are not
17/// corrected, but instead an \alib_assertion is raised.
18/// In release builds, however, no checks are performed, which improves execution speed.
19///
20/// A programmer does not notice the existence of this option, unless he consults the
21/// corresponding method's reference documentation, because of the default-value #"CHK;2".
22/// Only with code critical to performance or size, the parameter might be crucial to give.
23///
24/// \note This type, as well as sibling type #"CHK;2" should rather reside in namespace
25/// #"alib::lang;2", but was placed in the libraries root namespace for convenience and
26/// shortness of string-concatenation sequences of the using-code.
27struct NC : std::false_type {};
28
29/// See sibling type #"NC".
30struct CHK : std::true_type {};
31} // namespace [alib]
#define ALIB_EXPORT
Definition alox.cpp:14
See sibling type #"NC".
Definition chk_nc.hpp:30