644cae506f
view: move alignment test for cast into the implementation
...
Moving the alignment test from SFINAE into the implementation as a
static_assert means that users don't need to include the implementation
for types where `cast` isn't called. Otherwise, iterator_traits requires
a definition to work with.
2019-05-15 13:03:38 +10:00
c7689960be
types/description: add a not-equal operator
2019-05-15 13:03:25 +10:00
eb1c97a519
types/description: handle BOOL types in dispatch
2019-05-14 13:06:24 +10:00
a56610e205
types/description: add a bool specialisation
2019-05-14 13:01:23 +10:00
b5fdedfe5e
random: add 0-to-n uniform convenience function
2019-05-13 16:16:14 +10:00
831b02c907
random: add an explicit generator parameter for container choice
2019-05-12 14:34:53 +10:00
b8af3d0d9e
coord/ops: add a modulos function
2019-05-12 14:34:32 +10:00
9a8679c733
random: materialise the offset temporary for container choose
...
This helps a little in some debugging situations and isn't terrifically
expensive.
2019-05-12 11:31:29 +10:00
98705a61c9
random: add container random choice
2019-05-12 11:04:36 +10:00
b0897a5ea7
iterator/zip: prefer std::size over .size
2019-05-12 10:30:10 +10:00
da6d5cb2a8
view: add ssize query
2019-05-12 07:53:08 +10:00
52467c056d
view: add implicit bool operator for 'not empty'
2019-05-12 07:52:54 +10:00
01e46c7725
hash: add a variadic mix operator
2019-05-12 07:52:39 +10:00
dccc4fbbf7
coord/ops: std::hash should return a size_t
2019-05-12 07:52:19 +10:00
347b13ee60
coord/comparator: allow delayed and defaulted deduction of arguments
2019-05-12 07:51:42 +10:00
6d48e5a8e5
types/description: add arity and alignment variables
2019-05-09 10:32:39 +10:00
d8c8d00a4b
strongdef: add move constructor and assignment operators
2019-05-08 10:33:09 +10:00
c3c36a662b
posix/ostream: protect win32 against missing stat
members
2019-05-05 09:30:00 +10:00
82aef3e207
time_win32: add forgotten header
2019-05-05 09:29:35 +10:00
0d265db0c7
cast: disable adddress-of-packed-member in alignment cast
2019-05-05 09:29:07 +10:00
3c78e19c99
types/tagged: prefer variadic alignas over explicit calculation
...
This reduces the scope for constant integral expression errors under GCC
9
2019-05-04 11:33:59 +10:00
577d7f5887
posix: prefer char strings for the time being
2019-05-04 11:33:43 +10:00
a03bdf5e1d
parse/value: remove pessimising move
2019-05-04 11:33:21 +10:00
1d387ea323
debug: suppress nonnull-compare warnings in CHECK
2019-05-04 11:32:59 +10:00
654f391cba
string: add upper
comparator
2019-05-02 11:03:22 +10:00
f9aa13ad81
ascii: add try_upper transform
2019-05-02 11:03:00 +10:00
050897389b
doc: remove documentation of extracted library code
2019-05-01 15:35:32 +10:00
95c5fc5b1d
bitwise: remove tests that perform a full rotate
...
Full rotation is undefined on x86 so it's caught be assertions now.
2019-05-01 13:17:35 +10:00
46c2153434
string: add string_less comparator
2019-05-01 12:39:19 +10:00
ed8db05fed
singleton: add swap modifier
2019-05-01 12:39:19 +10:00
c01aa64b32
preprocessor: add DECLARE_CLASS and DECLARE_STRUCT helpers
2019-05-01 12:39:19 +10:00
35ae04510f
ascii: add try_lower
2019-05-01 12:39:19 +10:00
5fb87ea4c4
posix/ostream: add stat ostream operators
2019-04-26 12:11:42 +10:00
cd8a2d9816
posix/util: add stat
wrappers
2019-04-26 12:11:25 +10:00
0144018992
bitwise: don't allow full rotation
2019-04-26 10:27:22 +10:00
1ca47626aa
scoped: don't force rvals for function object
2019-04-25 09:22:02 +10:00
174bd62a29
bitwise: add ctz, aka count trailing zeroes
2019-04-24 13:25:44 +10:00
cc9b9b19c1
hash/buzhash: add digest_type typedef
2019-04-23 08:54:58 +10:00
e1d56395f6
build: remove buzstats tool
2019-04-23 08:19:47 +10:00
4cc20526ce
tools/buzstats: add initial buzhash query tool
2019-04-22 14:23:52 +10:00
8e92563a15
hash/buzhash: remove overzealous rotation warning
2019-04-22 14:23:26 +10:00
209a6800c4
hash/buzhash: add a trivial buzhash implementation
2019-04-22 13:59:48 +10:00
81715c1602
hash/table: add a trivial table lookup 'hash'
2019-04-22 09:51:04 +10:00
0683f80903
registrar: add skeleton of plugin registry
2019-04-16 11:02:26 +10:00
520af37042
format: support string_view as a string
2019-04-16 10:18:10 +10:00
71c44b3293
introspection: use __FUNCTION__ parsing method for type_name queries
2019-04-16 10:17:53 +10:00
1cd107d27e
map/fixed: add custom comparator support
2019-04-15 13:34:26 +10:00
6fba251a38
pool: avoid unsigned/signed type conversion warnings
2019-04-15 10:36:53 +10:00
c718c9bff4
maths/fast: avoid size_t/float precision warnings
2019-04-15 10:36:18 +10:00
39107bb62c
job/queue: avoid noexcept termination in default_parallelism
2019-04-15 10:35:49 +10:00