Commit Graph

43 Commits

Author SHA1 Message Date
35e3f69ad2 maths, view: rationalise equal,almost_equal,==
views should not do elementwise comparisons for equality operators.
they are pairs of iterators and are only equal if their iterators are
equal.

instead, use `equal` for elementwise equality. we update the name of
exactly_equal to perform this operation too.
2018-01-31 19:33:42 +11:00
681768093e hash: use a consistency, less flexible, interface 2018-01-13 15:24:12 +11:00
0351313c36 Merge branch 'master' into coord 2017-11-23 17:24:11 +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
4050754ab4 preprocessor: use a script to create map/reduce
We need over 300 arguments for some projects and I'm not going to code
that shit by hand.
2017-09-12 14:17:30 +10:00
e1aacef7a2 stream: use scoped manipulators 2017-01-05 20:21:20 +11:00
98dc992473 build: avoid integer length warnings 2017-01-05 19:50:28 +11:00
353cf839d4 use nested namespace declarations 2017-01-05 15:06:49 +11:00
9a6a406fa2 build: use path objects over c_str calls 2016-11-17 18:07:57 +11:00
9a798446b5 build: remove unnecessary includes
discovered with include-what-you-use
2016-10-12 15:08:22 +11:00
be6ca2e1d2 build: workaround unknown warning warning in clang 2016-10-11 21:44:25 +11:00
48364cd227 build: use experimental::fs over boost::fs 2016-10-07 19:48:42 +11:00
d9713fe8b7 json/tree: fix signed min, unsigned max constraints
signed/unsigned casting issues prevented correct comparisons with the
min/max constraints. account for the source type's range before doing the
comparison.
2016-09-20 16:02:08 +10:00
f9fb0873d3 build: tidy system headers 2016-07-28 13:39:27 +10:00
74fc943f53 build: quiesce type conversion warnings 2016-06-29 17:55:12 +10:00
73c30561af json/tree: reinstate path based parsers
json::tree::node is a fat object, so it's safe to load the source data
from within the parsing function
2016-06-28 16:57:44 +10:00
d7204d7cac json: remove path based parsers
parsers don't store copies of the data, so we can't allow functions that
allocate data themselves.
2016-06-28 15:59:53 +10:00
642317f6a4 json: use templated iterator for parsing from views 2016-06-28 14:16:28 +10:00
8142944139 json: store numbers natively as uint/sint/real
allows more accurate representations and better error checking.
2016-05-12 17:41:31 +10:00
9bbcfa6e63 make header paths more explicit 2016-04-05 11:06:35 +10:00
ab330cc520 add ref-qualifiers to avoid dangling refs/ptrs 2016-03-17 18:05:28 +11:00
ea1dbd253a j/tree: add from_path function for clarity 2016-02-11 14:53:43 +11:00
424e6e8701 cast: move types/casts to cast 2015-11-17 16:19:27 +11:00
b1bc54ac8c maths: move remaining operations into util namespace 2015-11-16 11:44:07 +11:00
cb12d4fd1f io: remove redundant write overloads 2015-10-29 10:51:42 +11:00
c2589abc8e j/tree: add templated type conversions 2015-09-08 14:33:39 +10:00
e6b15d2a85 j/tree: remove ambiguous string parse call
single pointer string parsing can be confused with filesystem paths.
instead prefer the two pointer range form.
2015-09-08 14:32:48 +10:00
a28ea87d58 json/tree: dont use namespace std or util 2015-08-28 21:06:04 +10:00
daa2587240 json/tree: style 2015-08-28 20:36:21 +10:00
2658b41ea1 relicence under Apache-2.0 2015-04-13 18:05:28 +10:00
d102410567 json/tree: add as_bool native accessor 2015-03-23 18:41:07 +11:00
f73b39f063 json/tree: add std::string/string equality ops 2015-03-19 00:25:50 +11:00
1d0240ba10 json/tree: move some array methods to cpp 2015-03-19 00:25:50 +11:00
f333c75218 json/object: add find method 2015-03-19 00:25:50 +11:00
9230de8c98 json/tree: add const begin/end 2015-03-19 00:25:50 +11:00
1877767614 style 2015-03-19 00:25:50 +11:00
2592cd0442 json/tree: add mutable indexing operators 2015-03-19 00:25:50 +11:00
a2535e2006 json/tree: add mutable conversion queries 2015-03-19 00:25:50 +11:00
6e81437b93 json/tree: add as_chars accessor 2015-03-19 00:25:50 +11:00
4f0f040f7d json/tree: add clone method 2015-03-18 15:44:46 +11:00
47cc2adfab json: add key_error exception class 2015-03-18 15:42:03 +11:00
0db3188a49 j/tree: add as_{uint,float,double} 2015-02-16 23:38:08 +11:00
60787655b3 json: split json impl files into tree and flat 2015-02-03 00:15:07 +11:00