0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-12-11 16:13:01 +01:00
Commit graph

50 commits

Author SHA1 Message Date
Jason Volk
e08fc4b99f ircd::buffer: non-call copy and move. 2020-04-25 00:28:39 -07:00
Jason Volk
b2795c0338 ircd::buffer: Branchfree copy overload for single character. 2020-04-13 23:58:33 -07:00
Jason Volk
66be4ba6c3 ircd::buffer: Minor cleanup; named parameters. 2020-04-13 22:49:16 -07:00
Jason Volk
031f3e0a72 ircd::buffer: Add constructors which limit requested size to input buffer. 2019-12-31 11:23:20 -08:00
Jason Volk
35c37f6a67 ircd::buffer: Add boolean operators. 2019-09-14 17:15:56 -07:00
Jason Volk
02009c4aa9 ircd::buffer: Cleanup/simplify shared_buffer. 2019-09-03 10:07:08 -07:00
Jason Volk
062ea9ddf5 ircd::buffer: Support aligned allocations and aligned unique_buffer conversion. 2019-09-01 21:06:30 -07:00
Jason Volk
7e3b5db06a ircd::buffer: Add unique to shared buffer conversion. 2019-08-31 22:54:49 -07:00
Jason Volk
808148e326 ircd::buffer: Add buffer overlap util;
ircd::buffer: Assert on overlap.

ircd::buffer: Add operator+=.

irde::buffer: More aggressive inlining.
2019-07-11 15:51:08 -07:00
Jason Volk
801f0d57b7 ircd: Fix attributes for clang. 2019-06-23 07:37:23 -06:00
Jason Volk
656ef1572e ircd::buffer::parse_buffer: Remove erroneous cast operator. 2019-06-22 16:58:58 -06:00
Jason Volk
95e0ff3bbc ircd::buffer: Use __builtin_unreachable() for clang. 2019-06-21 04:36:53 -06:00
Jason Volk
864cdd6405 ircd::buffer: Add convenience typedefs for unique/shared buffer common templates. 2019-06-14 14:50:42 -06:00
Jason Volk
160734e3b4 configure: Define HAVE_SODIUM in config.h on pkg found. 2019-06-06 03:54:37 -07:00
Jason Volk
c3b6bba288 ircd::buffer: Always inline fundamental buffer template utils. 2019-05-08 05:19:04 -07:00
Jason Volk
bc82a5a12c ircd::buffer: Add canary on copy/move. 2019-05-08 05:19:04 -07:00
Jason Volk
afdf0efbd1 ircd::buffer: Tweak unique_buffer semantics. 2019-04-18 00:59:56 -07:00
Jason Volk
128b770429 ircd::buffer: Move aligned_alloc to ircd::allocator; deinline. 2019-04-18 00:21:08 -07:00
Jason Volk
286aee740b ircd::buffer: Use c++17 switch here; addl assertions. 2019-04-18 00:08:10 -07:00
Jason Volk
541dbadf2f ircd::buffer: Increase restrictions for unique_buffer<>. 2019-04-12 11:34:00 -07:00
Jason Volk
b45306a012 ircd::buffer: Additional assertions; simplify unique_buffer operations; minor cleanup. 2019-04-10 20:18:50 -07:00
Jason Volk
ca7d401144 ircd::buffer: Add remains() to window_buffer interface. 2019-04-08 20:42:37 -07:00
Jason Volk
70a47c98b1 ircd: Reduce several strict-overflow & related warnings. 2019-03-01 11:35:07 -08:00
Jason Volk
d41be90197 ircd::buffer: Add parse_buffer variant. 2019-02-28 10:10:43 -08:00
Jason Volk
5d3ce83f52 ircd::buffer: Allow decay-like conversion to begin pointer. 2019-02-08 18:22:40 -08:00
Jason Volk
a30c808b0e ircd: Start a README.md for any directory missing one; fix conformity of existing. 2019-01-26 12:29:08 -08:00
Jason Volk
c312f07893 ircd::buffer: Export buffers:: down to ircd::. 2018-12-18 14:44:25 -08:00
Jason Volk
26ed0ee0e4 ircd::buffer: Add an alignment check util. 2018-11-16 19:22:44 -08:00
Jason Volk
adf2de8aed ircd::buffer: Add include-conditioned zero() fallback and improve return semantic. 2018-11-16 14:28:03 -08:00
Jason Volk
4dd8f5ab3a ircd::buffer: Minor move misplaced buffer base cast operators. 2018-11-14 00:31:55 -08:00
Jason Volk
2ab314e687 ircd::buffer: Improve exceptions thrown from aligned_alloc(). 2018-11-12 16:49:06 -08:00
Jason Volk
382dc67ca1 ircd::buffer: Use runtime alignment for unique_buffer rather than template value. 2018-11-09 15:55:20 -08:00
Jason Volk
10cf8e798c ircd::buffer: Abstract the aligned_alloc() out of the unique_buffer template. 2018-11-01 23:27:51 -07:00
Jason Volk
5eacd22866 ircd::buffer: Enable the templated value for unique_buffer alignment. 2018-10-18 09:01:25 -07:00
Jason Volk
efd8a8c640 ircd::buffer: Make shared_buffer work. 2018-10-04 15:42:24 -07:00
Jason Volk
994916b7eb ircd::buffer: Deconflict buffers templates in separate namespace. 2018-09-13 05:12:10 -07:00
Jason Volk
a7f43fe48d ircd::buffer: Support release() for unique_buffer. 2018-08-18 17:43:59 -07:00
Jason Volk
6f75a1c8f8 ircd::buffer: Add copy-from-buffer ctor to unique_buffer. 2018-08-18 17:42:02 -07:00
Jason Volk
96da6a3486 ircd::buffer: Export begin()/end() ADL's down to ircd::. 2018-07-04 21:48:15 -07:00
Jason Volk
5e8c1ad52d ircd::buffer: Add const_buffer::insert() for boost::spirit compliance (noop). 2018-07-01 19:51:37 -07:00
Jason Volk
ac4ed03142 ircd::buffer: Add buffer_base::empty() for boost::spirit conceptual compliance. 2018-07-01 19:20:00 -07:00
Jason Volk
702c290d10 ircd::buffer: Minor cleanup/simplify. 2018-05-29 09:33:07 -07:00
Jason Volk
213826d06c ircd::buffer: Add convenience closure overload to window_buffer. 2018-05-07 14:44:31 -07:00
Jason Volk
b1f613b5ac ircd::buffer: Add a data shifter for window_buffer. 2018-04-10 19:32:56 -07:00
Jason Volk
d457a26022 ircd::buffer: Default construction for window_buffer. 2018-04-10 13:33:07 -07:00
Jason Volk
7a86a134fc ircd::buffer: Add move() analogue. 2018-03-20 02:59:03 -07:00
Jason Volk
b528920420 ircd::buffer: Add window_buffer::rewind(n). 2018-03-17 13:14:24 -07:00
Jason Volk
96818c9a46 ircd::buffer: window_buffer closure returns completed(). 2018-03-17 11:49:35 -07:00
Jason Volk
80f4b7151f ircd::buffer: Preliminary shared_buffer. 2018-03-13 22:44:13 -07:00
Jason Volk
3eadd31c7f ircd::buffer: Split into directory. 2018-03-12 22:48:56 -07:00