0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-12-28 08:24:08 +01:00
construct/include/ircd/util
2022-06-17 21:11:53 -07:00
..
align.h ircd::buffer: Move abstract align/padding tools to ircd::util. 2022-06-17 21:11:53 -07:00
all.h
assume.h ircd: Add assume() convenience wrapping for __builtin_assume(). 2020-10-12 18:07:39 -07:00
boolean.h
bswap.h
callbacks.h
closure.h ircd::util: Complete the closure_bool template tool. 2022-06-17 21:11:53 -07: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
enum.h
env.h
hash.h ircd::util: Optimizations for the bernstein constexpr string hasher. 2020-12-11 22:50:57 -08:00
identity.h
instance_list.h
instance_multimap.h
iterator.h
life_guard.h
mask.h ircd: Reorg simd.h / buffer.h interface dependency relationship. 2020-10-10 00:43:59 -07:00
maybe.h
nothrow.h
params.h ircd::tokens: Simplify interface w/ closure template; eliminate named closure. 2020-11-27 20:06:19 -08:00
pointers.h
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
reentrance.h
scope_count.h
scope_restore.h
string.h
test.h
timer.h
tuple.h
typography.h ircd::util: Add involatile_cast() template convenience. 2022-06-17 21:11:53 -07:00
u2a.h
unique_iterator.h
unit_literal.h
unwind.h
util.h ircd::math: Start supplemental library; move log2 constexprs from util. 2021-03-05 13:02:12 -08:00
va_rtti.h
what.h

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).