Commit Graph

3001 Commits

Author SHA1 Message Date
b770e5f370 fixed: add integer logical operators 2017-01-04 22:38:41 +11:00
0997bbbaac endian: add signed byteswap 2017-01-04 22:38:15 +11:00
f3fb385686 hash/xxhash: remove unnecessary foundation code 2016-12-21 21:08:26 +11:00
4f795c9e40 bezier: add signed distance queries 2016-12-21 20:25:50 +11:00
0da8c189ec maths: add linear mixing function 2016-12-21 20:23:43 +11:00
e6115eb234 point: use vector operations for distance functions 2016-12-21 20:23:43 +11:00
a7caea16e1 vector: add 2d cross product 2016-12-21 20:23:43 +11:00
fde9b281be debug: correct DEBUG_LIMIT print ordering 2016-12-21 20:23:43 +11:00
185942593e debug: consistent spacing 2016-12-21 20:23:43 +11:00
3dd80be05a coord: use self-dot-product for norm2 2016-12-21 20:23:43 +11:00
c91e1d29c3 polynomial: style 2016-12-21 20:23:43 +11:00
9116404f30 introspection: work around clang static constexpr arrays 2016-12-21 16:46:16 +11:00
74f7bc2e1a region: make ostream output spacing consistent 2016-12-21 16:45:08 +11:00
2e0fa64494 range: convert static members to constexpr methods 2016-12-21 16:44:48 +11:00
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