Commit Graph

3492 Commits

Author SHA1 Message Date
0d7c2628f3 view: add noexcept copy/move assign/construct conditions 2019-05-24 12:16:37 +10:00
2153feafc1 thread/spinlock: assert the lock isn't held at destruction 2019-05-24 12:05:38 +10:00
747cfa9237 thread/spinlock: don't try to lock during a move operation 2019-05-24 11:47:19 +10:00
ec883c3009 parallel/stack: allow zero capacity construction 2019-05-24 11:46:55 +10:00
ad9d5d991c pool: ensure indices are pushed low to high 2019-05-24 11:31:44 +10:00
25a74badd6 thread/spinlock: add move assignment 2019-05-24 11:21:43 +10:00
257275e0f5 parallel/stack: add move operators 2019-05-24 11:21:31 +10:00
fb36953135 pool: use voidptr storage to avoid definition requirements for users 2019-05-24 11:04:43 +10:00
19409d67ca build: add a 'util_test' target 2019-05-24 10:58:32 +10:00
f3e0744e18 test/pool: make allocation tests more robust against allocator issues 2019-05-24 10:57:35 +10:00
34a5f7d52b parallel/stack: add clear and size queries 2019-05-23 16:43:13 +10:00
422a12258c parallel/stack: add view accessor for underlying data 2019-05-23 16:42:57 +10:00
ef56c29b22 parallel/stack: add move operator stubs 2019-05-23 16:42:38 +10:00
e033cb2e4f parallel/stack: Add a trivial thread safe stack 2019-05-23 15:21:07 +10:00
4b3e04ccd6 test/pool: spelling 2019-05-23 12:38:49 +10:00
afd601940c pool: initial attempts at clear 2019-05-23 12:36:52 +10:00
d4ba9fa061 pool: remove typed base queries, tighten alignment tests 2019-05-22 17:20:24 +10:00
bdbcb0788d pool: add clear function 2019-05-22 15:05:10 +10:00
ab0bb60602 pool: add move constructor 2019-05-22 15:05:00 +10:00
32e06e889e vector: note the representation of polar angles 2019-05-21 17:44:34 +10:00
f6b1f47e23 coord/traits: add value_trait specialisation for vector 2019-05-21 17:44:18 +10:00
34a69f5656 types/description: rename the size query for description to 'bytes'
This tends to cause less confusion for consumers about the exact meaning
of 'size'. It gets confused with arity quite often.
2019-05-20 12:30:04 +10:00
7805153e17 nocopy: remove deprecated header 2019-05-17 13:44:14 +10:00
8beada1646 debug: split debug headers into components 2019-05-17 12:26:08 +10:00
6bc13544dd types/description: add support for coordinate types 2019-05-17 10:55:49 +10:00
50f38c21af map/fixed: add a const index operator 2019-05-17 10:50:09 +10:00
37f5d77622 iterator/referencing: change relation operators to be const 2019-05-17 10:49:40 +10:00
a4d963e00b debug: move panic related calls to a distinct unit
This will allow us to reduce the required headers and avoid some
circular dependencies in some client libraries.
2019-05-17 10:48:29 +10:00
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