Commit Graph

670 Commits

Author SHA1 Message Date
24d31b216b map/multi_fixed: add insert, erase, find, comparators 2021-02-05 12:04:20 +10:00
774ccb763d map/multi_fixed: add multimap with fixed storage 2021-02-03 16:21:42 +10:00
2f3a767285 geom/sample: add subregion sampler for extents 2020-12-15 11:32:57 +10:00
8228a9be0f r/gen: style 2020-12-09 07:49:03 +10:00
a2fa34c619 r/dist: add the normal distribution 2020-12-09 07:47:17 +10:00
8f5604dde6 hash: add halfsipmix 2020-11-03 11:45:21 +10:00
58d86bbc95 region: add a single 'covers' test 2020-10-27 16:00:53 +10:00
0d9a80ea84 region: add another intersects test 2020-10-27 15:32:11 +10:00
6782b821b9 region: add some region-region intersects tests 2020-10-27 12:20:41 +10:00
94d3f676c6 introspection: update name tests for clang-11 2020-10-22 08:38:59 +10:00
5a7613d3f3 coord/comparator: convert to use std::weak_ordering
This allows more flexibility in some client code (eg, calling this to
sort compound objects like region).
2020-10-21 14:03:08 +10:00
b0ac349f70 string: fancy comparators should take only string_views
This reduces complications dealing with implicit casts from things like
'std::string' which are fairly common.
2020-10-21 10:23:04 +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
a392ca1aa9 set: add a simple static-alloc, dynamic-resize, set 2020-09-21 14:34:23 +10:00
9d0e9a9f1d region: move rotate90 out of the header 2020-08-21 11:34:52 +10:00
34270e5b8f rand: prefer our own generators 2020-08-18 07:20:26 +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
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
b3050c88c2 signal: simplify the implementation of the cookie and signal 2020-07-23 15:16:15 +10:00
ef560d8c1e types/description: use the inner_type for descriptions 2020-05-01 11:19:46 +10:00
d099a159fb stringcache: add a simple bulk string cache 2020-04-23 05:53:40 +10:00
fb13c0fb0f job/dispatch: explicitly specify the dispatchable region 2020-03-12 12:45:45 +11:00
8697c103d6 region: add intersection operation 2020-03-12 12:45:29 +11:00
5d0b75d129 introspection: test variadic template type_name 2020-02-27 08:00:18 +11:00
f34d5ce278 introspection: add test for template-template-type reflection 2020-02-27 07:05:57 +11:00
eac5957f60 tuple/value: correct the test case values 2020-02-25 11:31:56 +11:00
61cc9b9ed2 tuple/value: add all and none queries 2020-02-25 11:17:05 +11:00
1427a61745 concepts: protect tuple concept against empty tuples 2020-02-25 11:16:58 +11:00
0dc4929c5e concepts: add initial testing header 2020-02-18 11:23:21 +11:00
8cdbbcb26e build: fix range-loop-analysis warnings 2020-02-17 17:40:03 +11:00
0a7adfb037 cmdopt: add simple requires constraint callbacks 2020-01-17 07:58:23 +11:00
5d0f879ad4 quaternion: ensure tests don't use >2PI radian parameters 2020-01-01 06:54:25 +11:00
5251c9b071 quaternion: add test for from_euler 2019-12-19 14:45:18 +11:00
3152ed3277 mutex: silence an unused variable warning in a test 2019-12-16 08:19:44 +11:00
f5afc0130a tuple/type: add prefix query 2019-12-09 11:22:13 +11:00
03786f3fcc string: add to_lower and tests 2019-11-26 08:10:04 +11:00
932b93ce5e list: add additional node types 2019-09-10 14:43:08 +10:00
ce03a24f88 list/sort: add initial linked list merge sort 2019-09-09 10:22:36 +10:00
077ecf5682 typeidx: add type tagged namespacing to queries 2019-09-04 08:06:46 +10:00
3866249607 types/description: add underlying_comparator for enum descriptions 2019-08-30 15:30:45 +10:00
fd64ca6bce region: correct the point-region distance2 calculation 2019-08-30 13:45:08 +10:00
458654c9a3 parse/enum: add lookup-by-function 2019-08-29 13:33:18 +10:00
ad92254554 parse/enum: add support fro enum classes 2019-08-26 12:18:37 +10:00
f551e48ddb geom/sample/edge: correct the test's include paths 2019-08-20 15:20:49 +10:00
b6d1b74bc4 geom/sample: add edge sampling routines for extent2i 2019-08-20 15:00:26 +10:00
4e7e2c812d scoped: rename disabling methods for consistency 2019-08-12 12:58:44 +10:00
928cdb4e8b backtrace: give consistent outputs for backtrace 2019-07-02 16:39:40 +10:00
01094611eb thread: add minimal thread primitives for win32
This allows us to get around the lack of these types under MinGW
2019-06-22 15:46:34 +10:00
f4438831a6 build: update the meson build configuration 2019-06-19 17:28:01 +10:00
f86989bc67 rand/rdrand: add rdrand generator 2019-06-19 12:02:50 +10:00
3a83851e90 rand/system: add system generator for Linux 2019-06-19 12:02:40 +10:00
822243f86d parse/enum: return a cookie we could use for cleanup on setup 2019-06-01 10:06:15 +10:00
cc7d4eb0a9 parse/enum: allow translation of enum string to integer with typeidx 2019-05-30 12:33:28 +10:00
5e3af7f8fb parse/enum: add basic typeid enum parsing 2019-05-30 11:54:56 +10:00
41edd3cebe types/description: add initial enum support 2019-05-30 10:43:28 +10:00
e4ce92454c parse/value: add bool specialisation 2019-05-30 10:42:25 +10:00
25746b2036 test/introspection: add more templated type_name tests 2019-05-28 13:48:45 +10:00
f3e0744e18 test/pool: make allocation tests more robust against allocator issues 2019-05-24 10:57:35 +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
8beada1646 debug: split debug headers into components 2019-05-17 12:26:08 +10:00
6d48e5a8e5 types/description: add arity and alignment variables 2019-05-09 10:32:39 +10:00
654f391cba string: add upper comparator 2019-05-02 11:03:22 +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
174bd62a29 bitwise: add ctz, aka count trailing zeroes 2019-04-24 13:25:44 +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
71c44b3293 introspection: use __FUNCTION__ parsing method for type_name queries 2019-04-16 10:17:53 +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
70a16c7d47 scoped: add optional reset modifier 2019-04-12 16:40:17 +10:00
9926179e7f map/fixed: add static sized flat map 2019-03-28 14:28:08 +11:00
9b994b12ae utf8: workaround gcc8's lack of char8_t 2019-03-26 12:20:40 +11:00
382e093f57 geom/segment: add bresenham iterator 2019-03-22 15:11:01 +11:00
0d9374d3dd coord/base: add indices query using supplemental values 2019-03-22 11:54:29 +11:00
39bbaa5a80 geom/segment: add segment/region intersection test 2019-03-21 17:10:52 +11:00
48b04765d7 geom/segment: extract point distance unit test 2019-03-21 16:26:00 +11:00
065daa96c6 strongdef: don't expose the raw data directly 2019-03-20 15:39:24 +11:00
83cd6074b8 parse/time: add consuming and non-consuming parsers 2019-03-19 17:09:03 +11:00
fdcab4eafd parse/time: add duration parsing 2019-03-19 16:02:39 +11:00
48c4866705 parse: move test binaries into a single directory 2019-03-19 16:01:55 +11:00
e5e47ffb24 parse: move si and value parsing into common namespace 2019-03-19 12:38:22 +11:00
340d873d3a iterator: move each iterator to their own unit 2019-03-18 16:18:27 +11:00
020d3c0aaf si: change the SI code to a parser 2019-03-18 14:09:29 +11:00
4d91db760c iterator: flesh out the iota container 2019-03-18 14:09:29 +11:00
87457c25b7 job/dispatch: avoid system include style in tests for local headers 2019-03-14 17:05:30 +11:00
b1076d07ce signal: reduce templating complexity 2019-03-13 12:08:57 +11:00
fe031378fe signal: use more descriptive template parameter names 2019-03-12 15:43:47 +11:00
4a73a3cea7 job/dispatch: add index uniqueness test 2019-03-08 09:42:15 +11:00
976d44b1d9 region: use half-open range for region::step 2019-03-08 09:41:37 +11:00
0d27694a51 coord/comparator: add a trivial ordering comparator 2019-03-08 09:37:48 +11:00
35916e2854 rand/pcg: add pcg_xsh_rr generator 2019-02-21 20:53:58 +11:00
8f88569f61 rand: conform to the std generator concept 2019-02-21 20:53:07 +11:00
2f6c845409 string: fixup tokeniser::contains 2019-02-20 15:51:54 +11:00