Jason Volk
972502fd19
ircd::json: Inline trivial array::empty(); label branch expect.
2020-12-10 08:34:22 -08:00
Jason Volk
3412f3e6e3
ircd::json::tuple: Optimize at() runtime reference template approach.
2020-11-18 11:51:43 -08:00
Jason Volk
a82b325341
ircd::json: Optimize poor composition from inlining unquote().
2020-11-18 11:05:41 -08:00
Jason Volk
5958e73ff8
ircd::json: Add integrated type-checking overloads to reduce call count.
2020-11-11 22:49:39 -08:00
Jason Volk
30796e5729
ircd::buffer: Fix template name conflicts for clang-11; apply inline linkages.
...
ircd::json::tuple: Fix template name related for clang-11.
ircd::ctx: Fix template related for clang-11; inline linkages.
ircd:Ⓜ️ 🪝 Fix template related for clang-11.
2020-10-29 04:06:59 -07:00
Jason Volk
ed5875c869
ircd::json: Remerge tool header with index header; use value argument.
2020-10-27 01:17:06 -07:00
Jason Volk
1604ecd038
ircd::json::tuple: Use inline linkage for key() suite related.
2020-08-05 18:42:24 -07:00
Jason Volk
9f09eb6581
ircd::json::value: Inline trivial indirections.
2020-08-05 17:27:54 -07:00
Jason Volk
f87eefbe04
ircd::json: Inline strung template ctor.
2020-08-05 02:18:56 -07:00
Jason Volk
153354c63f
ircd::json::tuple: Indicate various closures are noexcept.
2020-08-04 18:53:18 -07:00
Jason Volk
23bfdb070d
ircd::json::tuple: Use inline linkage; prevent non-constexpr outlining; use literal argument type.
2020-08-04 18:50:55 -07:00
Jason Volk
ae65ffdcbe
ircd::json::tuple: Use constexpr conditional in indexof() template.
2020-08-04 18:50:55 -07:00
Jason Volk
4e14c9c835
ircd::json::tuple: Inline constructors.
2020-08-04 15:50:04 -07:00
Jason Volk
20d7a8ee62
ircd::json::tuple: Use structure bound range iteration rather than library.
2020-08-04 15:49:55 -07:00
Jason Volk
45f43dd46a
ircd::json: Use inline linkage; prevent PLT entries.
2020-08-02 09:13:08 -07:00
Jason Volk
117e1c0f94
ircd::json::tuple: Move exception construction out of the hotline.
2020-08-02 07:32:22 -07:00
Jason Volk
0e6a6ea0b1
ircd::json: Replace char generator w/ new vectorized string streaming. ( fixes #158 ) ( fixes #159 )
2020-07-03 16:35:28 -07:00
Jason Volk
d456a42cdd
ircd::json: Add stats items counting calls and cycles on input and output.
2020-06-24 11:00:11 -07:00
Jason Volk
31dfedbcd7
ircd::json: Add suite for type optimized type query; refactor grammars.
2020-05-24 19:03:00 -07:00
Jason Volk
54a72532b6
ircd::json: Eliminate output validation for release builds.
2020-05-22 16:37:05 -07:00
Jason Volk
c73636f950
ircd::json: Add output validation to base stringify() template.
2020-05-22 16:37:05 -07:00
Jason Volk
648d6e42b4
ircd::json: Inline vector::const_iterator related.
2020-05-18 18:12:34 -07:00
Jason Volk
cbce88e34e
ircd::json::tuple: Fix type=NUMBER serial=true tuple assignment.
2020-04-22 05:34:12 -07:00
Jason Volk
79a4394626
ircd::json::stack: Simplify checkpoint interface controls.
2020-04-14 15:31:41 -07:00
Jason Volk
cb41660c94
ircd: Applications of loopless copy overload for single character.
2020-04-13 23:58:33 -07:00
Jason Volk
c1692de5ed
ircd::json: Abstract the source json::object out of m::event for all tuples by default.
2020-04-05 16:15:23 -07:00
Jason Volk
44dce34197
ircd::json::tuple: Avoids PLT entries for complex templates in modules.
2020-04-03 12:29:41 -07:00
Jason Volk
a7d9476a05
ircd::json: Split array::const_iterator from array header; inline comparison suite.
2020-04-03 11:02:49 -07:00
Jason Volk
c4d041d1ae
ircd::json: Inline object::const_iterator comparison suite.
...
ircd::json: Split object::const_iterator from object header.
ircd::json: Split object::member related from object header.
2020-04-03 11:02:49 -07:00
Jason Volk
17628cbc44
ircd::json: Prevent aggressive unroll into double-jump jam for keys counting.
2020-04-03 08:18:51 -07:00
Jason Volk
5bd8178c94
ircd::json: Add conditional constexpr assignment check during tuple iteration.
2020-03-22 18:18:50 -07:00
Jason Volk
d87616e2fb
ircd::json::strung: Remove duplicate adl interface.
2020-03-19 16:25:45 -07:00
Jason Volk
537bdc5e19
ircd::json: Add tuple get()/at() non-constexpr accessor suite.
2020-03-19 16:01:32 -07:00
Jason Volk
e6c9f757ce
ircd::json: Add a members replacement tool.
2020-03-18 19:47:18 -07:00
Jason Volk
476f1d6548
ircd::json: Minor cleanup; header convention.
2020-03-18 19:35:34 -07:00
Jason Volk
66c4ebfbb4
ircd::json: Add a member replacement tool.
2020-03-18 16:28:16 -07:00
Jason Volk
7669fd53d9
ircd::json: Move exception construction branch to unlikely seg; minor cleanup.
2020-02-12 14:34:26 -08:00
Jason Volk
1ebe09f36b
ircd::json: Resize value bitfields to alignment for movdqa.
2020-02-11 10:12:58 -08:00
Jason Volk
04595054d8
ircd::json: Fix member constructor template.
2020-02-10 14:35:17 -08:00
Jason Volk
ab6672877d
ircd::json: Move max_string_size constant to header.
2020-02-09 14:54:38 -08:00
Jason Volk
66934f317a
ircd::json::stack: Track and assert the running recursion level.
2019-12-01 21:37:22 -08:00
Jason Volk
f86b129ea6
ircd::json::stack: Add class member counters; assertions; conditions.
2019-09-23 20:11:20 -07:00
Jason Volk
1f82e009b7
ircd::json: Deinline member ctor.
2019-09-13 16:32:26 -07:00
Jason Volk
bd1b060314
ircd::json: Split some print_error cases into print_panic; relax print_error; minor cleanup.
2019-09-09 19:03:23 -07:00
Jason Volk
1c0f947211
ircd::json: Add name-based operations to tuple::keys::selection.
2019-08-17 00:39:12 -07:00
Jason Volk
a8b3e29cac
ircd: Apply noexcept on various constexpr callstacks.
2019-08-15 00:05:48 -07:00
Jason Volk
7fb0958080
ircd::json::tuple: Split additional non-member templates into header; constexpr member get()/at().
2019-08-15 00:05:48 -07:00
Jason Volk
af48bdfa6e
ircd::json: Stub an unescape().
2019-08-02 15:04:29 -07:00
Jason Volk
de986d2272
ircd::json::stack: Make completed() return a string_view instead of const_buffer.
2019-07-30 12:26:26 -07:00
Jason Volk
4d8d2a4dd7
ircd::json: Improve and inline value comparison operators.
2019-07-15 11:06:01 -07:00