Jason Volk
fc9ed2e87e
ircd::fmt: Fix specifier escaping.
2019-06-01 02:31:03 -07:00
Jason Volk
643bb62c6e
ircd::fmt: Add hex uppercase specifier.
2019-05-02 15:35:26 -07:00
Jason Volk
744438ec49
ircd: Precompile the spirit.h header.
2019-04-20 19:24:18 -07:00
Jason Volk
af1bd92b26
ircd::spirit: Apply hidden visibility to all headers + our internal grammar namespaces.
2019-04-16 18:33:01 -07:00
Jason Volk
ff4afc0efc
ircd::fmt: Add support for padding; add alignment and padding to additional handlers.
...
fixes #54
2019-04-03 15:51:42 -07:00
Jason Volk
a1419ca78b
ircd::fmt: Add alignment rules to hex lowercase specifier handler.
2019-04-03 15:51:42 -07:00
Jason Volk
1089530652
ircd::fmt: Narrow long double to double for grammar templates.
2019-02-28 18:09:36 -08:00
Jason Volk
4f721f48e5
Eliminate friend-injection.
2019-02-15 18:48:59 -08:00
Jason Volk
ed62a4c61c
ircd: Ⓜ️ Minor formatting.
2019-02-05 23:18:05 -08:00
Jason Volk
a8584f3336
ircd::fmt: Fix unconditional null termination regression.
2018-12-15 20:29:53 -08:00
Jason Volk
2eaf5c74c2
ircd::fmt: Minor simplify; cleanup.
2018-12-14 15:51:12 -08:00
Jason Volk
fde8dbc69d
ircd::fmt: Cleanup/reorg definition namespace scoping.
2018-11-28 14:41:27 -08:00
Jason Volk
24ad230aed
ircd::fmt: Modernize buffering, cleanup, comment various.
2018-11-28 14:41:27 -08:00
Jason Volk
580a041ab5
ircd: Improve human readable unit tool suite.
2018-09-24 23:56:29 -07:00
Jason Volk
34e969d01e
ircd::fmt: Support long double; Add precision to double format specifier.
2018-09-20 23:30:50 -07:00
Jason Volk
ae3eede730
ircd::fmt: Support width-aligned signed and unsigned integers.
2018-05-31 10:23:29 -07:00
Jason Volk
1ab3489977
ircd::fmt: Add width-aligned string format specifiers.
2018-05-31 10:18:37 -07:00
Jason Volk
7825114281
ircd::fmt: Internalize specifier related; various cleanup.
2018-05-30 09:05:15 -07:00
Jason Volk
b5104d6504
ircd::fmt: Remove cruft.
2018-05-30 08:45:11 -07:00
Jason Volk
16c86f9a76
ircd::fmt: Fix copying / nulling / assertions.
2018-05-19 20:53:40 -07:00
Jason Volk
6dcc7e29df
ircd::fmt: Leave useful note for assertion.
2018-04-09 11:48:20 -07:00
Jason Volk
30eb9178bd
ircd: Consolidate spirit typedefs from all relevant units into spirit.h.
2018-03-17 10:44:40 -07:00
Jason Volk
be624ca7f6
Update Copyrastafaris.
2018-02-05 21:24:34 -08:00
Jason Volk
936f138a3f
ircd::fmt: Cleanup. Reduce sketchiness.
2018-01-19 02:47:08 -08:00
Jason Volk
fed3265d33
ircd::fmt: Unrestrict long long from fmt specifiers.
2018-01-10 21:34:21 -08:00
Jason Volk
13aff1d7a8
ircd::rfc1459: Move grammars out of includes.
2017-11-30 11:23:46 -08:00
Jason Volk
b172fd5739
ircd::fmt: Assert for not finished before loop break.
2017-11-30 11:23:43 -08:00
Jason Volk
08b961351d
ircd::fmt: Add more string types for the %s specifier here for now.
2017-10-15 21:20:25 -07:00
Jason Volk
277765ebbc
ircd::fmt: Show demangled type name of faulty argument.
2017-09-08 03:47:52 -07:00
Jason Volk
cd7d86b699
ircd::fmt: Add lowercase hex specifier.
2017-04-06 18:34:44 -07:00
Jason Volk
39ab4d1c68
fixup! ircd::fmt: Cleanup grammar; fixes; support std::exception type to %s.
2017-04-06 18:34:09 -07:00
Jason Volk
49da778def
ircd::fmt: Add bool support.
2017-04-02 20:53:14 -07:00
Jason Volk
3a31c62681
ircd: Minor cleanup.
2017-03-30 16:04:20 -07:00
Jason Volk
b6b78f9674
ircd::fmt: Use stronger cast.
2017-03-30 16:04:19 -07:00
Jason Volk
35345c164e
ircd::fmt: Cleanup grammar; fixes; support std::exception type to %s.
2017-03-30 16:04:18 -07:00
Jason Volk
91cd0327bd
ircd::fmt: Remove rfc1459 builtin specifiers; various/cleanup.
2017-03-20 19:20:33 -07:00
Jason Volk
99a4e523b8
fixup! fixup! fixup! fixup! ircd: Add the va_rtti construct.
2017-03-17 23:30:09 -07:00
Jason Volk
d3e5cb7f73
ircd::fmt: Add the %p format specifier for pointer types.
2017-03-17 21:14:45 -07:00
Jason Volk
274e2ec717
fixup! ircd::fmt: Support string_view; updates to the format string system.
2017-03-17 20:27:33 -07:00
Jason Volk
fa1c393d7a
fixup! ircd: Add the va_rtti construct.
2017-03-17 20:05:36 -07:00
Jason Volk
86804755c8
ircd: Add the va_rtti construct.
2017-03-17 17:36:09 -07:00
Jason Volk
33b5dc21b7
ircd::fmt: Support string_view; updates to the format string system.
2017-03-17 17:00:41 -07:00
Jason Volk
c9ddf4f6ab
ircd: Add lex_cast wrapper interface; various cleanup.
2017-03-14 15:03:15 -07:00
Jason Volk
b592b69b86
What is the Matrix? Control.
2017-03-10 17:51:18 -08:00
Jason Volk
1a367399d3
ircd::rfc1459: Replace gather() with charset() for use with spirit char_().
2016-09-22 16:18:32 -07:00
Jason Volk
5dd280bb3b
ircd::fmt: snprintf -> category.
2016-09-22 16:18:32 -07:00
Jason Volk
ccac92704d
ircd::fmt: Add "%param" and "%parv" for middle and full-vector, respectively.
2016-09-22 16:18:32 -07:00
Jason Volk
fb50f82b6e
ircd::rfc1459: Allow generation of single character params, and empty strings.
2016-09-22 16:18:32 -07:00
Jason Volk
99ad299ef0
ircd::fmt: Add a "%prefix" specifier which builds ":foo!bar@baz" from the arg.
2016-09-22 16:18:32 -07:00
Jason Volk
21aacf6509
ircd::fmt: Add syntax for specifier forced-termination.
...
This is available for a particular corner case due to our use of full-
word format specifiers.
Case: "%couch" is that %c followed by ouch, or is that the handled
format specifier '%couch' ?
If '%couch' is not registered there is no fallback to finding '%c'
(maybe one day), so in this case one must write "%c$ouch" and '%c'
becomes the specifier and the output for 'p' will be "pouch" and for
"%c$$ouch" the output will be "p$ouch."
2016-09-22 16:18:32 -07:00