2dcb315ce6
region: prefer constexpr functions over static variables
2016-12-12 17:07:53 +11:00
b5932c4537
extent: prefer constexpr functions over static variables
2016-12-12 17:06:55 +11:00
f6116eb63e
point: prefer constexpr functions over static variables
2016-12-12 17:06:04 +11:00
4bf160934c
vector: prefer constexpr functions over static variables
2016-12-12 17:04:39 +11:00
d2ba672a30
colour: remove static constants
2016-12-12 17:03:36 +11:00
ed3f5629b8
region: prefer explicit over block namespacing
2016-12-12 16:26:09 +11:00
17b5514df4
point: prefer explicit over blocked namespacing
2016-12-12 15:45:43 +11:00
9711272989
xxhash: fix some integer conversion warnings
2016-12-12 15:45:21 +11:00
3e9b86f33f
view: add make_cview function
2016-12-06 15:18:49 +11:00
6d079554a6
format: fix escaped percent before value specifier
2016-12-06 13:37:54 +11:00
0756f3f4cf
log: set default log level to NOTICE
...
Using NOTICE as the default log level gives us both DEBUG and INFO to
play with for messages that we don't want to display by default.
2016-11-23 17:45:53 +11:00
a1b35dfbbe
string: add trivial wchar-to-utf8 conversions
2016-11-22 21:48:57 +11:00
d1ec872bd4
xxhash: add forgotten C implementation
2016-11-18 13:24:34 +11:00
555168d9a3
view: implement non-const indexing operator
2016-11-17 19:53:19 +11:00
b027b60be0
view: find function takes const ref
2016-11-17 19:53:19 +11:00
86332b4d3c
view: move array constructor to make_array function
2016-11-17 19:53:19 +11:00
86d35bf903
debug: explicitly instantiate extent/point validator
2016-11-17 18:43:32 +11:00
6a8b78cdd7
fixup: add minimal filesystem implementation
...
Implement the minimum possible surface of std::experimental::filesystem
in terms of POSIX APIs so that we can compile under mingw
2016-11-17 18:38:09 +11:00
cb32823248
hash: add xxhash implementation
2016-11-17 18:38:09 +11:00
5b44b8f3e0
hash/simple: forward arguments to hash function
2016-11-17 18:38:09 +11:00
a10c091114
introspection: use pointers over arrays for type_name
...
It's too hard to diagnose undefined symbol issues under clang so we use
pointers for the time being.
2016-11-17 18:38:09 +11:00
67f2aee701
io_win32: rename util::fd to posix::fd
2016-11-17 18:38:08 +11:00
31e9270e6b
build: fix missing windows includes
2016-11-17 18:38:08 +11:00
d24c979c6b
range: define static members before first use
2016-11-17 18:38:08 +11:00
286dd1278f
build: remove sign comparison mismatch
2016-11-17 18:38:08 +11:00
947ec5cdb2
stringid: remove explicit synchronisation
...
It is more appropriate to synchronise externally, and it simplifies
building across mingw which lacks std::mutex and friends.
2016-11-17 18:38:08 +11:00
e85c31f526
build: unconditionally build posix fd/dir
...
These are always safe with mingw
2016-11-17 18:38:08 +11:00
246357e279
random: remove typed randomisers without generators
2016-11-17 18:38:08 +11:00
9a6a406fa2
build: use path objects over c_str calls
2016-11-17 18:07:57 +11:00
a93dd90da9
types: remove elems function, prefer std::size
...
Now that std::size is part of our supported compilers we can remove the
old elems function.
2016-11-17 18:06:39 +11:00
70f0fdd830
build: fix for mingw32 and libssp
2016-11-17 18:05:10 +11:00
a2cbcc88c6
m4/nc: bump for filesystem library
2016-11-02 22:12:03 +11:00
d9de1c3f58
configure: bump to AM-1.15, drop dist-bzip2
2016-11-02 22:08:02 +11:00
4f3fd9547d
region: add three dimensional typedefs
2016-10-25 20:02:19 +11:00
77c7d87d60
region: remove incorrect union accessors
...
the union accessors x,y,w,h were predicated on the dimension being 2.
for higher/lower dimensions this resulted in the incorrect variable
being returned.
rather than do something fancy with unions and coord storage type for
access to the underlying data we force the user to acknowledge the split
storage of point/extent.
unfortunately we have pretty shitty names for the components as a
result.
2016-10-25 19:59:53 +11:00
249f8adfed
region: forward is_valid to component point and extent
2016-10-25 19:59:06 +11:00
17423ca1c7
extent: instantiate is_valid for more types
2016-10-25 19:58:38 +11:00
7121415c5f
point: add is_valid specialisation
2016-10-25 19:58:19 +11:00
919c635f63
coord/base: assert we are using arithmetic types
2016-10-25 19:57:37 +11:00
1662856e82
io: use size_t result for mapped_file::size
2016-10-25 19:57:13 +11:00
c04b153242
m4/nc: bump for sanitizer options
2016-10-25 17:50:11 +11:00
1b5ad41b5d
io: use intmax for size to match mmap output
2016-10-25 17:50:11 +11:00
6781f7a361
cast: allow trunc_cast to same type
...
this makes templated code slightly easier to write
2016-10-25 17:50:11 +11:00
e5d44d0c6d
coord: instantiate signed types
2016-10-25 17:50:11 +11:00
9546526c1f
region: remove extent_t/point_t distinction
...
it's too problematic to retain signedness distinctions between base
points and region extents. just use the same types, but retain the
named typedefs for compatibility.
2016-10-25 17:50:11 +11:00
ec78216813
coord: prefer int/unsigned to intmax/size_t
2016-10-25 17:46:36 +11:00
0d9d6317fc
quaternion: add second optimised vector rotate
...
The original code was supposed to be from a stackexchange derivation,
but it clearly doesnt match the link.
2016-10-18 16:45:57 +11:00
3a4b711467
quaternion: add assignment-multiply operator
2016-10-18 16:45:38 +11:00
e549f3d554
matrix: move identity and zeroes into constexpr funcs
2016-10-17 22:34:53 +11:00
e96ef7af32
quaternion: move out of coord infrastructure
2016-10-17 22:30:16 +11:00