Commit Graph

2273 Commits

Author SHA1 Message Date
116ad04a1f build: use ostream/istream over iostream 2016-08-04 17:42:41 +10:00
310c01b9d2 view: instantiate uint8_t ostream operator 2016-08-04 14:15:02 +10:00
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