Commit Graph

56 Commits

Author SHA1 Message Date
f6056153e3 rename root namespace from util to cruft
This places, at long last, the core library code into the same namespace
as the extended library code.
2018-08-05 14:42:02 +10:00
803acc9a87 relicense under MPL-2.0 2018-08-04 15:14:06 +10:00
af77aad894 extent/region: simplify iteration over ranges 2018-03-23 16:38:54 +11:00
0351313c36 Merge branch 'master' into coord 2017-11-23 17:24:11 +11:00
d3f434b523 coord: make template parameters more flexible
The coordinate system was unable to support types that prohibited
redim or retype operations. Additionally, the `tags' type used for
providing named data parameters was unwiedly.

We remove much of the dependance on template template parameters in the
defined operations and instead define these in terms of a template
specialisation of is_coord.

The tag types were replaced with direct specialisation of the `store'
struct by the primary type, and passing this type through use of the
CRTP.
2017-11-22 17:03:00 +11:00
34788756d2 build: don't use './' as an include prefix
GCC produces ODR error when including paths of the form './foo' and
'foo' in the same binary. Rather than managing duplication we just
universally pick the absolute form over the relative form.
2017-11-22 16:49:37 +11:00
e7fe5d044a extent: prefer to use brace initialisation 2017-08-27 12:30:09 +10:00
b5932c4537 extent: prefer constexpr functions over static variables 2016-12-12 17:06:55 +11:00
86d35bf903 debug: explicitly instantiate extent/point validator 2016-11-17 18:43:32 +11:00
17423ca1c7 extent: instantiate is_valid for more types 2016-10-25 19:58:38 +11:00
e5d44d0c6d coord: instantiate signed types 2016-10-25 17:50:11 +11:00
9a798446b5 build: remove unnecessary includes
discovered with include-what-you-use
2016-10-12 15:08:22 +11:00
66f0bbc025 extent: make area and diameter constexpr 2016-09-28 17:21:02 +10:00
00eca4445b debug: use less complex specialistion for validator 2016-08-10 17:36:25 +10:00
2f295fca11 extent: add missing required header 2016-06-20 18:01:26 +10:00
809e7b0421 iostream: use consistent ostream format 2016-03-11 13:01:57 +11:00
7f4cf49931 iterator: use infix_iterator for coord ostream 2016-03-11 12:48:19 +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
1de33ce53c debug: use new namespace 2015-10-29 10:45:42 +11:00
0799b2cd75 extent: instantiate extent_range for 1-3 dimensions 2015-10-06 15:22:14 +11:00
464c703ffd extent: add range-for adapter for extent points 2015-09-29 17:32:11 +10:00
86834281b8 coord: add 16 bit value instantiations 2015-09-22 17:24:16 +10:00
b58dd7a880 extent: fix double negative for contraction 2015-09-22 17:23:54 +10:00
4fad54f0b0 extent: don't fully qualify the primary object 2015-09-16 02:25:31 +10:00
0302df1ba8 extent: quiesce clang abs warnings for unsigned types 2015-09-09 18:45:23 +10:00
2658b41ea1 relicence under Apache-2.0 2015-04-13 18:05:28 +10:00
af11d7c730 extent: add contract methods 2015-04-08 19:00:33 +10:00
832472c861 extent,region: instantiation for 3d types 2015-03-06 17:52:40 +11:00
439bb19679 coord: move operators out of subclasses 2015-03-06 01:09:58 +11:00
872499360f extent: derive from generic coord class 2015-03-03 19:43:09 +11:00
31d1d741e9 extent/region: update to use size parameters 2015-03-03 04:13:29 +11:00
791b91420f extent: add indexing operator 2015-03-03 00:14:16 +11:00
eda97b844b extent: add MIN/MAX static members 2015-03-02 18:49:12 +11:00
22a492e58a extent: add scalar constructor 2015-03-02 18:49:12 +11:00
6c88184b6b extent: add vector-only constructor 2015-02-20 21:53:51 +11:00
b05b779d7d extent: migrate to free sanity/valid 2015-02-13 17:32:08 +11:00
ab06dac6a4 extent: style 2015-02-13 16:30:36 +11:00
87b07cf305 extent: remove using namespace util 2015-02-13 16:29:07 +11:00
d4caabceec extent: instantiate ostream for float/double 2015-02-12 22:08:48 +11:00
23ffd18acb extent: add scalar variant of expanded 2015-02-12 17:40:47 +11:00
7b3ea29856 style 2015-02-12 17:40:36 +11:00
5c1b37d10d extent: add expansion operation 2015-01-16 14:42:04 +11:00
c931c718fe extent: move ostream operator to util namespace 2015-01-15 14:04:18 +11:00
9657c04eed extent: aspect should return float 2014-12-19 18:29:12 +11:00
ff17c51a85 extent: add ostream operator 2014-07-02 15:43:59 +10:00
89c87cbf06 extent: instantiate templates from stdint types 2014-07-02 15:43:24 +10:00
52eb957d4b build: convert c-style cast to c++ style 2014-07-02 15:42:25 +10:00
58f5fdf3f1 Bump the copyright years 2012-08-10 17:36:56 +10:00
7bad091cfe Use w/h instead of width/height for extent 2012-08-08 14:39:24 +10:00
4795e7f054 Add copy and assignment operators to util::extent 2012-06-05 22:50:52 +10:00