0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-12 21:11:14 +01:00
construct/include/ircd/util
2020-12-21 00:44:14 -08:00
..
all.h ircd::util: Start an all() convenience template w/ bool specialization. 2020-06-08 16:13:00 -07:00
assume.h ircd: Add assume() convenience wrapping for __builtin_assume(). 2020-10-12 18:07:39 -07:00
boolean.h ircd::util: Add a strong boolean typedef customization. 2019-08-02 17:34:31 -07:00
bswap.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
callbacks.h ircd::util::callbacks: Add default void prototype to template. 2019-09-30 14:23:28 -07:00
closure.h ircd::util: Implement the closure template concept. 2020-11-27 20:06:19 -08:00
compare_exchange.h ircd::util: Add a non-atomic compare_exchange(). 2020-12-21 00:44:14 -08:00
construction.h ircd: Fix inlining attributes for clang-10. 2020-07-10 20:04:39 -07:00
custom_ptr.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
enum.h ircd::util: Fix noexcept propagation through enum relaxation operators. 2019-07-30 13:46:22 -07:00
env.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
hash.h ircd::util: Optimizations for the bernstein constexpr string hasher. 2020-12-11 22:50:57 -08:00
identity.h ircd::util: Add pre-c++2a identity functor template. 2020-02-26 18:10:41 -08:00
instance_list.h ircd::util: Disable undefined-var-template warning for clang. 2020-02-02 17:35:33 -08:00
instance_multimap.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
iterator.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
life_guard.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
mask.h ircd: Reorg simd.h / buffer.h interface dependency relationship. 2020-10-10 00:43:59 -07:00
maybe.h ircd::util: Inline template definitions for clang. 2020-02-01 13:34:45 -08:00
nothrow.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
params.h ircd::tokens: Simplify interface w/ closure template; eliminate named closure. 2020-11-27 20:06:19 -08:00
pointers.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
pretty.h ircd: Fix/improve comments. [ci skip] 2020-12-06 10:36:47 -08:00
pubsetbuf.h ircd: Replace callsites w/ template deduced mutable_cast. 2020-11-05 22:10:53 -08:00
README.md ircd: Start a README.md for any directory missing one; fix conformity of existing. 2019-01-26 12:29:08 -08:00
reentrance.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
scope_count.h ircd::util: Improve some comments; minor cleanup. 2020-05-28 15:20:32 -07:00
scope_restore.h ircd::util: Improve some comments; minor cleanup. 2020-05-28 15:20:32 -07:00
string.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
test.h ircd::util: Improve the test trigger prototype. 2019-07-10 21:39:47 -07:00
timer.h ircd::util: Improvements to timer tool; fix accumulator semantics; comments. 2020-09-10 23:50:47 -07:00
tuple.h ircd: Misc fixes for clang. 2019-06-23 16:22:06 -06:00
typography.h ircd::util: Improve mutable_cast convenience template. 2020-11-05 22:10:53 -08:00
u2a.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
unique_iterator.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
unit_literal.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
unwind.h ircd::util: Increase constness; remove default template arguments on definition. 2019-12-04 23:28:29 -08:00
util.h ircd::util: Add a non-atomic compare_exchange(). 2020-12-21 00:44:14 -08:00
va_rtti.h ircd::util: Fix inline namespace reopening for clang. 2019-06-23 07:37:23 -06:00
what.h ircd::util: Add overload for what() on std::exception value-type. 2020-04-23 04:19:53 -07:00

Utility Toolchest

This namespace contains an accumulated collection of miscellaneous classes and functions which have demonstrated value some place in the project, but are not really specific to the project's application. While most of libircd is arguably a utility suite itself (i.e tokens.h and lex_cast.h and base.h which are not within ircd::util) the contents of this namespace tend to be even more abstract, and serve as utilities to the utilities, etc. This collection is here to save developers time and enforce DRY.

These tools still rank below ircd::exception, *_view, buffer:: and allocator:: and can still make use of those considering the linear inclusion strategy of the project (see: ircd.h).