Commit Graph

1656 Commits

Author SHA1 Message Date
caa70a2063 bitwise: add popcount 2015-11-25 13:46:13 +11:00
a3bdf1b7a1 strongdef: disable mismatched T/Tag assignment 2015-11-25 13:32:29 +11:00
93c08b048c memory/deleter: add function calling deleter
used with unique_ptr in the deletion phase
2015-11-24 16:53:10 +11:00
ffe219748a alloc/arena: add simple test cases 2015-11-24 16:52:47 +11:00
96769c582e alloc/arena: argument forwarding for acquire 2015-11-24 16:52:14 +11:00
5601c1e9c4 alloc/stack: add capacity/size/remain implementations 2015-11-24 16:49:11 +11:00
8ea208daea alloc/linear: add capacity/size/remain implementations 2015-11-24 16:48:46 +11:00
a8e4e39f8f strongdef: prevent conversion operator based equality 2015-11-24 16:48:07 +11:00
4556745d77 memory/deleter: add trivial test case 2015-11-19 16:46:44 +11:00
00f6f614be memory: rename object_deleter to owner_deleter 2015-11-19 16:46:19 +11:00
99d025af4d strongdef: actually use tagging for disambiguation... 2015-11-19 15:06:52 +11:00
37268d6215 memory/deleter: remove nullptr callback restriction
if you want to pass in null then it's your head...
2015-11-19 15:04:19 +11:00
873997fa33 alloc: trivial top level comments for linear/stack 2015-11-19 15:03:57 +11:00
38678cc78e strongdef: add specialisation of numeric_limits 2015-11-18 14:46:43 +11:00
4599b11197 strongdef: add trivial instantiation test 2015-11-18 14:44:08 +11:00
bb1652b8f3 strongdef: add simple thin value wrapper type
useful for strong typesafe typedefs.
2015-11-17 22:27:49 +11:00
cc12ed8943 pointer: add pointer align function 2015-11-17 17:21:48 +11:00
7dcaca2681 memory: add object based deleter for unique_ptr 2015-11-17 17:20:52 +11:00
0be5ccf5c7 cast: style 2015-11-17 16:38:59 +11:00
e05e049c69 cast: ensure real<->int or size reduction in trunc_cast 2015-11-17 16:38:34 +11:00
cfb5e13c28 cast: simplify sign_cast, remove identity case 2015-11-17 16:37:51 +11:00
424e6e8701 cast: move types/casts to cast 2015-11-17 16:19:27 +11:00
78e0455800 t/casts: use equivalent types for equality 2015-11-17 14:04:23 +11:00
b1880e47b3 debug: fully qualify *_equal comparators 2015-11-17 14:03:32 +11:00
8e2c5f1942 maths: explanatory header for sign() 2015-11-16 17:57:53 +11:00
486cefc4c6 maths: move functions inline, remove ipp 2015-11-16 13:57:51 +11:00
eb2722bfa4 maths: style 2015-11-16 13:21:38 +11:00
791f8b2bcd maths: remove rootsquare, use std::hypot instead 2015-11-16 13:18:29 +11:00
b1bc54ac8c maths: move remaining operations into util namespace 2015-11-16 11:44:07 +11:00
5a26793b0a maths: reduce template verbosity 2015-11-13 18:00:15 +11:00
8f806b5fa8 cmdopt: use util's implementation of pow 2015-11-13 17:59:58 +11:00
b6a4166c68 maths: style 2015-11-13 17:25:21 +11:00
1ec9582240 alloc: add initial allocator stubs 2015-11-13 17:18:10 +11:00
584b57b669 m/b/circular: check ftruncate return value 2015-11-13 17:18:10 +11:00
8b16317b0e float: style 2015-11-13 17:18:10 +11:00
f2bd6501e2 maths: remove const/pure attributes
const/pure attributes are causing inconsitencies for various functions.
it's safer to just not use them until there's a more thorough
investigation of their impact.
2015-11-13 17:18:10 +11:00
89fe57b65b maths: move more operations into util:: 2015-11-13 17:18:10 +11:00
7b083df977 maths: tighten up type requirements for almost_equal
almost_equal only operates on two reals, or two integers (and even then
only on the same signedness).
2015-11-13 17:18:10 +11:00
c76e0716c4 maths: annotate with gnu::const where appropriate 2015-11-13 13:50:58 +11:00
02a42f282e maths: use SFINAE for round_to instead of assert 2015-11-13 13:48:46 +11:00
cd58dc8cc3 maths: rename align as round_to
reduces confusion between pointer align, and number rounding
2015-11-13 13:48:46 +11:00
11256c2645 raii: scoped_function takes a nullary void functor 2015-11-13 13:48:46 +11:00
3531b09794 platform: add platform suffix definitions 2015-11-13 13:48:46 +11:00
6561e46018 memory: remove legacy scoped_malloc 2015-11-13 13:48:46 +11:00
32ca27abdf memory: add paged and circular buffers 2015-11-11 16:56:35 +11:00
597fda0dfa memory: add pagesize query 2015-11-11 16:56:00 +11:00
e5dd121ece types: add std::data analogue 2015-11-05 13:17:59 +11:00
a73fb9307c matrix: extract size dependant operations 2015-11-04 23:23:46 +11:00
2ca4a7e291 coord/ops: enable iff types are coords 2015-11-04 23:22:49 +11:00
23fff4a65a coord/ops: expand dot product to accept arrays 2015-11-04 17:10:16 +11:00