Commit Graph

2801 Commits

Author SHA1 Message Date
4643beac82 buffer/paged: simplify paged buffer 2018-12-17 14:47:11 +11:00
3925431838 view: add 'covers' test 2018-12-17 14:46:30 +11:00
043dd73677 pointer: rename align as align_up, and add align_down 2018-12-17 14:45:54 +11:00
60bd71a57b view: allow multibyte casts in make_byte_view 2018-12-17 14:45:09 +11:00
cc2d11f102 geom/ops: add stub 'covers' test 2018-12-17 14:44:43 +11:00
78f746c21e pool: use std::size_t in preference to unsigned for capacity 2018-12-17 13:01:54 +11:00
c34002ae07 posix/fd: add pwrite wrapper 2018-12-17 12:50:05 +11:00
bb812ba81c io: add pwrite wrappers 2018-12-17 12:50:05 +11:00
825d359b9d io: test that mapped_file satisfies is_container_v 2018-12-17 12:50:05 +11:00
b4c8190054 array/parray: assert parray is a container 2018-12-17 12:50:05 +11:00
15de10c19d types/traits: check for begin/end in is_container_v 2018-12-17 12:50:05 +11:00
5144dd137a array/parray: Add missing Container typedefs 2018-12-17 12:50:05 +11:00
a7786f04b9 array: move sarray and parray into array directory 2018-12-17 12:50:05 +11:00
a2ef7cb75c encode/number: set the view's remainder at exit 2018-12-16 18:06:28 +11:00
1bb566fcda encode/number: add base36 encode 2018-12-16 16:47:08 +11:00
49b8594a73 view: add some brief explanatory comments 2018-12-16 16:25:04 +11:00
8047bf0f83 encode/number: add number decoding for base36 2018-12-16 16:24:45 +11:00
5fedbdbdfe parse: change parsing functions to modify the data view 2018-12-16 13:26:48 +11:00
44760c6869 view: protect functions taking indices with enable_if 2018-12-16 13:26:13 +11:00
4b3b001d18 view: provide accessible typedefs for BeginT and EndT 2018-12-16 13:25:41 +11:00
c573c9fa37 endian: add an auto-converting endian type 2018-12-15 15:38:01 +11:00
259c3de417 bitwise: add 'bitfield' type suitable for unions 2018-12-15 15:38:01 +11:00
6bcbaeb98e bitwise: slight improvements to documentation 2018-12-15 15:38:01 +11:00
b0311f9cd4 endian: remove templates from bswap
It's too hard to trace problems with callers if we use templates here
(most of the callgraph gets truncated so we can't even tell who's
calling us).
2018-12-15 15:38:01 +11:00
07e66f20d3 view: allow longer words for byte views 2018-12-15 15:38:01 +11:00
e1e036e776 hton: avoid using type names as variables 2018-12-15 15:38:01 +11:00
98e9fe45c4 cast: silence warnings when lossless casting to smaller sized enums 2018-12-06 15:58:47 +11:00
9eb2784d84 bitwise: convert popcount template into explicit overloads
popcount, popcountl, and popcountll need to be used for each appropriate
fundamental type. It's easiest to just provide overloads for popcount
for the few cases we have available than to deal with templates.
2018-12-06 15:56:37 +11:00
5627f0f280 bitwise: remove unneeded BITMASK_BITS constants 2018-12-06 15:43:30 +11:00
1a82e4fe76 build: transition from experimental filesystem 2018-12-05 19:12:03 +11:00
f3f59e1f37 except: add string_error mixin 2018-12-04 13:46:23 +11:00
8c4b7ac93c except: add docstrings 2018-12-03 15:33:14 +11:00
ec16afc747 except: add custom base exception 2018-12-03 15:29:21 +11:00
d6b80da18b cast: add sanity cast 2018-12-03 15:29:04 +11:00
9ea44a5063 geom/ops: add variadic aabb calculation 2018-11-30 14:46:41 +11:00
ce3e3d83d3 format: allow implicit conversion from formats to strings 2018-11-29 13:10:02 +11:00
c7cc0dbf4c random: add a trivial test of the default generator
This allows us to ensure some level of coverage using tools like ASan.
2018-11-28 15:24:28 +11:00
c7eb82c993 random: use decltype auto for wrapper functions 2018-11-28 15:24:01 +11:00
532bd3b706 geom: delete rval constructors for samplers
Samplers tend to hold a const reference to the relevant data and so we
want to ensure it's not possible to inadvertantly pass in a reference to
data that is going out of scope.
2018-11-28 15:23:03 +11:00
1e0a87d5df geom/sample: align the interfaces for volume/surface sampling 2018-11-26 15:21:18 +11:00
38906862a3 test: use local style includes where possible
This removes some assumptions that break building the library in
isolation.
2018-11-19 16:45:19 +11:00
f75c8f6c6d types/tagged: use relative paths for test headers 2018-11-19 16:27:02 +11:00
1dcb20fb53 geom/sample: Use correct grammar in comments. 2018-11-19 15:41:55 +11:00
210c963d9f geom: remove template templates from geom::sampler 2018-11-19 15:36:29 +11:00
e26165cea9 algo/search: return the score and the object in minimises 2018-11-19 15:35:56 +11:00
0138b00f87 algo/search: improve minimises documentation 2018-11-19 15:35:42 +11:00
e42f71f9af types/traits: add is_orderable trait 2018-11-19 15:35:05 +11:00
3625a92977 algo: add minimises linear search 2018-11-14 10:21:51 +11:00
a691683c7d types/tagged: add missing include for alignment cast 2018-11-13 15:20:10 +11:00
a948b3d682 preprocessor: add convenience APPEND_COMMA macro 2018-11-13 15:19:53 +11:00