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