b858daedd9
concepts: add initial clock concept
2020-09-30 15:14:26 +10:00
f7abb3201e
iterator/infix: add complete make_infix overload for arrays
2020-09-30 10:57:15 +10:00
19551e30ed
dset: add named erase method
2020-09-29 12:52:50 +10:00
04de102789
introspection: split the header into functional groups
2020-09-24 15:42:14 +10:00
43b8e8f6f2
introspection: add type_name_with_namespace
2020-09-24 14:40:56 +10:00
43f5db1cc1
view: operator bool should be explicit
...
Implicit bool tends to allow some unexpected behaviour when indexing
with incorrect types. eg, `view<int const*> a; a["foo"];`
2020-09-24 08:05:47 +10:00
fdaa5e1392
assert: split CHECK_LIMIT into INCLUSIVE and INDEX
...
LIMIT hid an off-by-one bug when tests used end iterators. We rename the
assertion to uncover all uses of the flawed implementation, and split it
into an identical assertion, and one intended to protect against
iterator ends.
2020-09-24 08:03:41 +10:00
dd281fbe1e
dset: forward only the live data for contains
with dset
2020-09-22 07:57:35 +10:00
2d6d924d66
types/tagged: support cvref in visit
2020-09-22 07:54:15 +10:00
a392ca1aa9
set: add a simple static-alloc, dynamic-resize, set
2020-09-21 14:34:23 +10:00
831a7b7037
maths: add integer consteval logarithm
2020-09-19 09:05:23 +10:00
c23d2e38f3
types/traits: add try_underlying
2020-09-11 13:36:17 +10:00
34aed6c74d
strongdef: add is_strongdef
type_trait
2020-09-11 13:36:04 +10:00
9153155076
singleton: add "maybe" pointer accessor
2020-09-11 13:35:51 +10:00
ca192ef4d8
debug/assert: add warn_return
2020-09-10 15:08:10 +10:00
aa1d35cdf6
tuple/value: don't use forwarding constructor for map
2020-09-07 16:44:04 +10:00
91137f4f36
endian: include compare header for three-way compare
2020-08-22 07:32:30 +10:00
9d0e9a9f1d
region: move rotate90 out of the header
2020-08-21 11:34:52 +10:00
38e1ce63fd
extent: add rotate90
2020-08-21 11:34:29 +10:00
8eca4175ec
quaternion: style
2020-08-21 09:34:01 +10:00
e0acc9288e
quaternion: explicitly instantiate the sanity check
2020-08-21 09:33:46 +10:00
34270e5b8f
rand: prefer our own generators
2020-08-18 07:20:26 +10:00
5f4c95aa11
rand/xoshiro: add a std::seed_seq constructor
2020-08-18 07:19:55 +10:00
3d5258b974
hash: add combiner adapter
2020-08-17 14:31:16 +10:00
fde275feb2
rand: add xoshiro256plusplus generator
2020-08-17 14:30:55 +10:00
4bd9ec982b
rand: add the splitmix64 generator
...
This is the suggested initialiser for xoshiro256plusplus state.
2020-08-17 13:55:54 +10:00
bf3ae14f25
region: add rotate method
2020-08-17 11:49:15 +10:00
81a7b83dfe
array/darray: add resize calls
2020-08-13 13:33:20 +10:00
c6912618a4
typeidx: add variant query
2020-08-12 10:18:23 +10:00
8bfb1e3d92
log: make once_flag constinit
...
This ensures we'll error out at compile time rather than encounter a
static initialisation ordering error.
2020-08-03 11:48:48 +10:00
f178159fba
log: prefer once_flag over an atomic<bool>
2020-08-03 11:47:45 +10:00
e8f23a349e
thread: remove thread, mutex, and condition_variable wrappers
...
These are no longer needed as we required MinGW with PThreads support.
2020-08-03 11:21:29 +10:00
e4eb234889
matrix: add rotation_euler
conversion
2020-07-24 13:44:32 +10:00
c56058d40d
cast: disable const-qual warnings for ffs cast
2020-07-24 10:30:46 +10:00
b3050c88c2
signal: simplify the implementation of the cookie and signal
2020-07-23 15:16:15 +10:00
cf141e45d2
sarray: add an empty
query
2020-07-22 13:27:32 +10:00
1550529a39
types/tagged: add an equality operator
2020-07-21 15:05:21 +10:00
47d0e69b46
signal: treat function-ref signals as if they were std::function
2020-07-21 15:01:33 +10:00
837b948435
Header cleanup using include-what-you-use
2020-07-01 17:02:44 +10:00
457effabf5
coords/ops: add ceil for coords
2020-06-22 12:58:21 +10:00
7ff3991069
geom/segment: add addition operator for vectors
2020-06-19 12:46:03 +10:00
9590a006da
geom/aabb: correct centre
for order of operations...
2020-06-19 10:29:33 +10:00
4b8947464b
geom/aabb: add a 'centre' query
2020-06-18 14:44:20 +10:00
deac73dc10
geom/aabb: add point-aabb distance2
2020-06-18 12:45:27 +10:00
3f6964f257
geom/aabb: add a cast
call
2020-06-18 12:45:08 +10:00
750b3b6519
types/description: add is_fundamental_match
for descriptions
2020-05-01 13:10:13 +10:00
03e29aede1
types/description: correct the comment for description::width
2020-05-01 11:25:27 +10:00
ef560d8c1e
types/description: use the inner_type for descriptions
2020-05-01 11:19:46 +10:00
3ff6873e4c
view: Avoid assertions that print the iterators
...
Not all iterators are printable.
2020-04-27 09:38:12 +10:00
0927816e42
init: add runtime initialisation cookie
2020-04-23 08:06:14 +10:00