d0a797d37e
debug: add CHECK_MOD
2016-08-03 18:12:05 +10:00
74284415a7
debug: prefer constref temporaries for CHECK macros
2016-08-03 18:11:29 +10:00
9270a05a8b
debug: prefer use of the standard __func__ symbol
2016-08-03 18:11:04 +10:00
c8d8067af2
format: add unsigned char write method
...
unsigned char sometimes arises from string literals
2016-08-03 18:10:09 +10:00
f9fd156df8
io_posix: add fd constructors to mapped_file
2016-08-02 18:51:04 +10:00
c6f483d077
ascii: add to_integer from ascii to numeric
2016-08-02 18:50:35 +10:00
3a0f20e68b
ascii: add is_space
2016-08-02 18:50:26 +10:00
5fee69debb
annotation: add likely/unlikely functions
2016-08-02 18:49:42 +10:00
7e0875628b
m4/nc: bump for ipa-pta optimsation fixes
2016-08-01 17:24:29 +10:00
7d277bb8ff
debug: reduce constexpr tomfoolery where not required
...
don't use compiler fooling tricks where it's not required
2016-08-01 17:23:53 +10:00
0b85632c97
ripemd: panic rather than throw in constexpr
...
calculating the hash should never need to throw; all error cases should
be detectable at construction time. we should panic if we detect such an
error.
this fixes a compilation warning
2016-08-01 17:23:30 +10:00
19bf405710
m4/nc: use new NC_SUBPACKAGE argument form
2016-07-31 14:32:09 +10:00
453bd1666d
m4: delete unused ax m4 files
2016-07-31 14:32:09 +10:00
c26c687912
format: set ostream precision as if for strings
...
ostream conversions are converted to strings anyway, so we should treat
them as such earlier in the process.
2016-07-28 16:13:23 +10:00
fad8181842
format: allow undersize integers for conversion
2016-07-28 16:13:23 +10:00
a40e09ed97
format: write c_str as %s by default, support c_str as %p
2016-07-28 14:18:47 +10:00
b4640d64d8
format: use const-ref over rval-ref for value params
2016-07-28 14:18:47 +10:00
b44e6b8cd7
WIP tap param rename
2016-07-28 14:18:47 +10:00
1e31f5daff
Merge branch 'master' of ssh://nerdcruft.net/var/git/libgim
2016-07-28 13:47:36 +10:00
fe8bbd1b61
coord: add forward declarations
2016-07-28 13:45:44 +10:00
25a9c6fafc
introspection: rename type_string to type_name
2016-07-28 13:45:09 +10:00
ed7c466d8d
tap: protect against exceptions in func eval expect
2016-07-28 13:44:17 +10:00
70170f4205
alloc/arena: disallow implicit copy constructor in test obj
...
fixes a build warning under clang
2016-07-28 13:39:27 +10:00
8cc4c1e82a
format: reimplement format rendering
...
requires literal string arrays, and implements more of the specifier
specification. does not implement 'n' or '$' specifiers. falls back to
snprintf for real arguments.
2016-07-28 13:39:27 +10:00
f9fb0873d3
build: tidy system headers
2016-07-28 13:39:27 +10:00
ef0fb30c8a
ascii: add constexpr ascii manipulators
2016-07-28 13:39:27 +10:00
c4daffc001
build: add forgotten includes
2016-07-28 13:39:27 +10:00
f793175fdf
json/schema: add 'integer' type support
2016-07-04 15:46:01 +10:00
8694b95cec
json/tree: add is_integer query
2016-07-04 15:45:38 +10:00
e1c115c71a
murmur2: make mixing constexpr and inline
2016-07-01 17:01:21 +10:00
2bf3e3c431
rand/xorshift: add min/max/discard operations
2016-07-01 16:26:25 +10:00
138cac23fe
rand/xorshift: throw on zero seed
...
zero seeds are a hard runtime error which shouldn't be compiled out in
release mode.
2016-07-01 16:25:48 +10:00
f741986c3f
rand/xorshift: simplify result operator specialisations
2016-07-01 16:23:55 +10:00
325a7405b5
rand/lcg: add min/max/discard operations
2016-07-01 16:21:13 +10:00
62482594bd
crypto/ice: fix key length assertion
2016-06-30 18:21:21 +10:00
2e700e6444
rand: add mwc64x generator
2016-06-30 18:20:57 +10:00
3b82757e5c
test/random: use a constant seed
2016-06-30 15:26:45 +10:00
10e0c4f923
json/except: use a human readable key_error message
...
the exception string was completely useless without mentioning "you
tried to dereference an invalid key".
2016-06-29 17:55:44 +10:00
6e533e47b7
hash/keccak: remove unused function
2016-06-29 17:55:30 +10:00
74fc943f53
build: quiesce type conversion warnings
2016-06-29 17:55:12 +10:00
0e29675ef5
cast: tighten trunc_cast type restrictions
...
trunc_cast should be between float/int/uint or to types of lesser
precision. also restrict to fundamental types until we actually test
with arbitrary types.
2016-06-29 17:53:44 +10:00
d51cfe7a34
stream: remove unneeded numeric class
...
explicitly cast before passing to a stream routine if you need it.
2016-06-29 17:52:26 +10:00
b1bc2a816d
json/schema: add path based validate
2016-06-28 16:59:56 +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
bf5cab6156
io: move view conversion operator to named function
2016-06-28 15:58:41 +10:00
fef1dc8300
alloc/dynamic: add missing override specifiers
2016-06-28 15:57:23 +10:00
0b128384eb
io: add lval ref-qualifiers to mapped_file members
2016-06-28 14:23:42 +10:00
642317f6a4
json: use templated iterator for parsing from views
2016-06-28 14:16:28 +10:00
194cd6c574
io: add view operator to mapped_file
2016-06-28 14:15:19 +10:00