Commit Graph

2879 Commits

Author SHA1 Message Date
3d59645637 iterator: add deduction guide for 'indices' 2018-07-04 14:01:00 +10:00
7ff2f38fd6 debug: allow variadic CHECK_SANITY for aux sanity variables 2018-06-29 17:34:22 +10:00
23e581ad6a debug: allow specialisation of validator for aux validation variables 2018-06-29 13:32:52 +10:00
4e10aa59b2 strongdef: remove the numeric_limits specialisation
Apparently we don't need this any more, and it's kinda ugly.
2018-06-27 17:59:26 +10:00
0df16bb9ee strongdef: swap template params, move to dedicated namespace 2018-06-27 17:58:45 +10:00
eef3327415 iterator: use index_type for the indices pseudo-container 2018-06-27 17:57:47 +10:00
4094a96160 iterator: add index_type trait 2018-06-27 17:57:22 +10:00
279af4c796 strongdef: significantly tighten restrictions on usage
It turns out that equality in particular was triggering implicit
construction of strongdef types. We make it much harder for these types
to spontaneously emerge.
2018-06-22 17:41:56 +10:00
6c0803b6e9 types/traits: add the identity type function 2018-06-22 17:41:36 +10:00
a95388b02b json-schema: print the validated schema
The validation process may modify the supplied JSON and it's useful for
debugging purposes to visualise any defaulted values.
2018-06-22 14:09:23 +10:00
65dad60e09 json/tree: forward the arguments for to_json/from_json 2018-06-22 14:08:59 +10:00
b918aa7fc0 types/traits: rename chain as compose 2018-06-21 13:19:21 +10:00
6f3952abcb strongdef: add default constructor if the type supports it 2018-06-21 13:18:53 +10:00
6dea530f6e coord/ops: remove misplaced include 2018-06-20 13:25:49 +10:00
cad9af9e25 gitlab: use the correct relative address for cmake builds 2018-06-20 13:23:14 +10:00
c2955997cc gitlab: cache the artefacts required for testing 2018-06-20 13:04:55 +10:00
8bc87e7c3f build: add C to the required language list
This is required for various compilation tests (like CHECK_SIZE_TYPE).
2018-06-20 12:50:27 +10:00
eb1b0de4c2 gitlab: use recursive submodule clones 2018-06-20 12:45:39 +10:00
0a61a64174 gitlab: add packages for ragel and python3 2018-06-20 12:41:47 +10:00
ec9b0a4797 gitlab: correct the name of the ninja package 2018-06-20 12:34:51 +10:00
d5201cba01 gitlab: add a trivial gitlab CI configuration 2018-06-20 12:31:51 +10:00
ba24e9e5af build: explicitly include the nerdcruft cmake module 2018-06-20 12:23:15 +10:00
ba0eabc848 job/queue: restrict job release lambda's parameters 2018-06-18 14:01:06 +10:00
d74fca4e98 scoped: simplify universal references
this avoids problems with use after stack unwind discovered using
sanitizers.
2018-06-18 13:51:59 +10:00
db90a4db53 scoped: declare copy and move constructors
they aren't defined currently because we haven't needed them. this is
just to avoid accidents where the defaults will prove problematic.
2018-06-18 13:50:16 +10:00
3722c8aaa3 region: add union operator for region/region 2018-06-14 15:07:25 +10:00
e9d5909f21 scoped: eliminate the raii header 2018-06-13 15:43:01 +10:00
710a99b865 scoped: add scoped value restoring class 2018-06-12 14:50:54 +10:00
22b25221b2 coord/base: add std::array conversion operator 2018-06-12 10:54:08 +10:00
0a599b4b14 region: add minimal docstrings for some queries 2018-06-07 15:20:37 +10:00
c4a8ff3424 region: add intersects overload for point/region
complements the existing region/point intersects test
2018-06-07 15:20:05 +10:00
6d6c53d5d1 tuple/type: fix typo in remove_t 2018-06-06 19:17:41 +10:00
d70d06468e tuple/type: add entuple, cat, remove, and unique types 2018-06-06 19:13:17 +10:00
8cd33ae5e5 strongdef: allow constructor to be implicit 2018-06-05 13:25:23 +10:00
c6cefe219d README: consolidate README files 2018-06-05 09:35:33 +10:00
50f43d2193 region: add free function point intersection test 2018-06-05 09:28:49 +10:00
33222d3ef4 types/description: add trivial type categorisation enums 2018-06-03 15:25:50 +10:00
18e2b615d5 std: add compact fixed width typedefs 2018-06-03 15:25:17 +10:00
82b1c9fa40 hash/siphash: set default compression/finalisation params 2018-06-01 13:25:21 +10:00
437b4267d3 maths: relax argument restrictions for min/max 2018-05-30 16:54:04 +10:00
11a077f63d region: add distance2 2018-05-30 14:35:11 +10:00
16fc2effb2 region: add uniform sampler 2018-05-30 14:35:03 +10:00
78dd62283b extent: add uniform sampler 2018-05-30 14:34:48 +10:00
5dadd8eb38 random: add coord generator 2018-05-30 14:33:31 +10:00
d21b7809dd random: add unit float and ranged int generator 2018-05-30 14:33:17 +10:00
a90ce0920f random: use more robust seeding strategy 2018-05-30 14:32:39 +10:00
cdac2dcbc2 maths: add 'frac' function
Extracts the fractional component from a floating point number. Prefer
to use temporaries that you have on hand over these functions.
2018-05-21 15:06:07 +10:00
7f00f92e59 geom/aabb: add query for aabb corners 2018-05-21 10:47:51 +10:00
7070607839 endian: refactor endian conversion 2018-05-19 18:06:34 +10:00
7d315c8095 allow/raw/linear: add typed offset query 2018-05-18 16:51:42 +10:00