Jason Volk
239de5c072
ircd: Add constexpr string_view constructors and literal _sv operator.
2017-10-11 20:54:02 -07:00
Jason Volk
4f0de4915d
ircd: Rename tokens_count() to token_count().
2017-10-11 20:54:02 -07:00
Jason Volk
d3f6ed0320
ircd: Typedef a buf for sha256; improve hash related interface.
2017-10-11 20:54:02 -07:00
Jason Volk
8da4874f2c
ircd: Uniform initialization style for these.
2017-10-11 20:54:01 -07:00
Jason Volk
dd80b127b4
ircd::buffer: Fix the closure type so it's not too strict.
2017-10-11 20:54:01 -07:00
Jason Volk
3425659d7f
ircd::fs: Add very preliminary aio and ircd init for such.
2017-10-11 20:54:01 -07:00
Jason Volk
9b1e76e242
ircd::util: Add a classic is_zero functor.
2017-10-11 20:54:01 -07:00
Jason Volk
14e5306713
ircd::util: Add uninterruptible_syscall() for use with some POSIX syscalls.
2017-10-11 20:54:01 -07:00
Jason Volk
dffe222a78
ircd: Improve date utils; add date formatted string output; related.
2017-10-11 20:54:01 -07:00
Jason Volk
5936504f3b
ircd::ctx: Make promise/future accessible in ircd::.
2017-10-11 20:54:01 -07:00
Jason Volk
b9f13ed2c2
ircd: Remove cruft.
2017-10-11 20:54:01 -07:00
Jason Volk
e3963da007
ircd: Various comments added/modified.
2017-10-11 18:18:20 -07:00
Jason Volk
c44970427a
ircd: Minor cleanup.
2017-10-11 18:18:20 -07:00
Jason Volk
2839eb4b50
ircd::log: Make logger threadsafe by injecting other thread's messages into ios.
2017-10-11 18:18:20 -07:00
Jason Volk
eb56befef0
ircd: Improve thread id related; add public functions to post to ios.
2017-10-11 18:18:19 -07:00
Jason Volk
15b67799b3
ircd::json: Add a buffer.
2017-10-11 18:18:19 -07:00
Jason Volk
5c69d3df5a
ircd::crh: Improve hash related interface; comments etc.
2017-10-11 18:18:19 -07:00
Jason Volk
deb40ae5c1
ircd::ed25519: Use fixed_buffers.
2017-10-11 18:18:19 -07:00
Jason Volk
51f5045c06
ircd::buffer: Add fixed_buffer with construction closure; minor cleanup.
2017-10-11 18:18:19 -07:00
Jason Volk
d83ea848da
ircd: Fix comment.
2017-10-11 18:18:19 -07:00
Jason Volk
d98abc9b17
ircd::log: Add #ifdef's around debug functions and hope for DCE on production builds...
2017-10-11 18:18:18 -07:00
Jason Volk
f32a984722
ircd::json: Add support for tuple indexing by hash; add c++11 literal hasher.
2017-10-11 18:18:18 -07:00
Jason Volk
55a4377d49
ircd: Evade type-punning the iov list node.
2017-10-11 18:18:18 -07:00
Jason Volk
b7f1f04412
ircd: Add $() hash convenience; comments on ircd::crh.
2017-10-11 18:18:18 -07:00
Jason Volk
87771b00ba
ircd::fmt: Add bsprintf(): all-in-one printf and buffer.
2017-10-11 18:18:18 -07:00
Jason Volk
6c04739634
ircd::json: Add mutable_buffer print() overload.
2017-10-11 18:18:18 -07:00
Jason Volk
fb498ed2f2
ircd::json: Fix error.
2017-10-11 18:18:18 -07:00
Jason Volk
fccfa03308
ircd: Add mutable_buffer ctor to parse::buffer; cleanup parse related.
2017-10-11 18:18:17 -07:00
Jason Volk
20869309a2
Checkpoint matrix with preliminary federation client and keyserver related.
2017-10-03 04:27:15 -07:00
Jason Volk
3a9696fb6c
ircd: Ⓜ️ Add all spec'ed event fields to event tuple.
2017-10-03 04:27:15 -07:00
Jason Volk
5073096335
ircd: Ⓜ️ Improve id construction / validation related.
2017-10-03 04:27:15 -07:00
Jason Volk
0399ddf3e3
ircd: Add stringops for counting starting and ending occurrences.
2017-10-03 04:27:14 -07:00
Jason Volk
8c4925419a
ircd: Improve base64 suite.
2017-10-03 04:27:14 -07:00
Jason Volk
c722ff6e71
ircd::json: Better handling and message for assignment failure to tuple.
2017-10-03 04:27:14 -07:00
Jason Volk
67dba9c471
ircd::crh: Fix buffer argument types; cleanup.
2017-10-03 04:27:14 -07:00
Jason Volk
234f7e34d7
ircd::ed25519: Add filesystem related for sk; add seed constructor; various.
2017-10-03 04:27:14 -07:00
Jason Volk
d7406d47cc
ircd::db: Better hack handling for not-found integer values.
2017-10-03 04:27:14 -07:00
Jason Volk
4cf197d263
ircd: Add chrono::hours; various cleanup; comments.
2017-10-03 04:27:14 -07:00
Jason Volk
47f3167479
ircd::buffer: Move array constructors down a level.
2017-10-03 04:27:14 -07:00
Jason Volk
4954c90e27
ircd::fs: Improve basic file read/write/append into buffers.
2017-10-03 04:27:14 -07:00
Jason Volk
0eb10c0495
ircd: Add b64encoded_unpadded variant.
2017-10-03 04:27:13 -07:00
Jason Volk
7745082fb0
ircd: Ⓜ️ Add preliminary matrix README.
2017-10-03 04:27:13 -07:00
Jason Volk
cc8a835ab7
ircd::db: Minor cleanup; fix identation.
2017-10-03 04:27:13 -07:00
Jason Volk
0cef42895c
ircd::buffer: Patch alignment related on unique_buffer.
2017-10-03 04:27:13 -07:00
Jason Volk
9c712486a1
ircd: Split up lexical.h; comments; cleanup.
2017-10-03 04:27:13 -07:00
Jason Volk
1502b973da
ircd: Add ed25519 dsa; reorg sodium related.
2017-10-03 04:27:13 -07:00
Jason Volk
2982166072
ircd: Ⓜ️ ircd::buffer conversions for id::bufs.
2017-10-03 04:27:13 -07:00
Jason Volk
0d71f8013a
ircd: Use chrono_literals.
2017-10-03 04:27:12 -07:00
Jason Volk
dd0de82e16
ircd: Add startswith_any() complement to endswith_any().
2017-10-03 04:27:12 -07:00
Jason Volk
4a6b3f5fcc
Add support for libsodium (NaCl) cryptography.
2017-10-03 04:27:10 -07:00
Jason Volk
c91c1e39e8
ircd::buffer: de-template required conversions; cleanup.
2017-10-03 04:26:28 -07:00
Jason Volk
a901256bcc
ircd: rename for brevity.
2017-10-03 04:17:11 -07:00
Jason Volk
19451ab914
ircd::ctx: shared_mutex; peek / view / shared_view; fixes.
2017-10-03 04:17:10 -07:00
Jason Volk
eeceba51b8
ircd::buffer: Add some doc; fixes.
2017-10-03 04:17:10 -07:00
Jason Volk
84d7746165
ircd: Add net; various asio related.
2017-10-03 04:17:10 -07:00
Jason Volk
aeef1aeef5
ircd: Add an adl's size(string_view).
2017-10-03 04:17:10 -07:00
Jason Volk
a46bba20a5
ircd: Fix date/time related.
2017-10-03 04:17:10 -07:00
Jason Volk
b9d657924d
ircd::http: Various fixes; add urldecode; chunked encoding content.
2017-10-03 04:17:10 -07:00
Jason Volk
71e92e9f47
ircd::buffer: Improve interface / conversions / type decls.
2017-10-03 04:17:09 -07:00
Jason Volk
d0fe0218f4
ircd::fmt: mutable_buffer overloads for *snprintf().
2017-10-03 04:17:09 -07:00
Jason Volk
6558af5639
ircd: Improve vector_view construction; cleanup.
2017-10-03 04:17:09 -07:00
Jason Volk
90f9c0e39d
ircd::util: Add an unlock_guard.
2017-10-03 04:17:09 -07:00
Jason Volk
ade7a138c4
ircd::db: Simplify the db::row using vector_view<cell>.
2017-10-03 04:17:09 -07:00
Jason Volk
c47be3008a
ircd::ctx: Add a shared_mutex.
2017-10-03 04:17:09 -07:00
Jason Volk
4090b80d60
ircd::json: Add missing serialized() participants.
2017-10-03 04:17:09 -07:00
Jason Volk
688f31afd3
ircd::buffer: Fix constness.
2017-10-03 04:17:09 -07:00
Jason Volk
f2264b02e6
ircd::http: Preliminary support for chunked encoding; improve header args.
2017-10-03 04:17:09 -07:00
Jason Volk
5d7eee1937
ircd: Ⓜ️ Simplify the event query interface by making more internal decisions from query data.
2017-10-03 04:17:08 -07:00
Jason Volk
c4a6addd5a
ircd::ctx: Add critical_assertion debugging tool.
2017-10-03 04:17:08 -07:00
Jason Volk
3649843950
ircd::json: Add conditional transform to tuple during serialization.
2017-10-03 04:17:08 -07:00
Jason Volk
9e2910aa1f
ircd: Attempt to add these hacks to string_view.
2017-10-03 04:17:08 -07:00
Jason Volk
dc1281a17c
ircd::db: Fix iov related.
2017-10-03 04:17:08 -07:00
Jason Volk
f8d6e2dddc
ircd::db: Update docs.
2017-10-03 04:17:08 -07:00
Jason Volk
dacff8eb9f
ircd::db: Rename where to query.
2017-10-03 04:17:08 -07:00
Jason Volk
8ceafd4281
Update README.
2017-10-03 04:17:08 -07:00
Jason Volk
016ff64dbb
ircd: Ⓜ️ Preliminary efficient membership query object.
2017-10-03 04:17:08 -07:00
Jason Volk
ec18d81d56
ircd::db: These can be public.
2017-10-03 04:17:07 -07:00
Jason Volk
92a8d8e2bf
ircd: Ⓜ️ Improve interfaces; Add prelim sync loop; Add send resource handler.
2017-10-03 04:17:07 -07:00
Jason Volk
b2f7e360a1
ircd::db: Allow empty query to index through cursor.
2017-10-03 04:17:07 -07:00
Jason Volk
b309793ed0
ircd::ctx: Add some docs; minor cleanup.
2017-10-03 04:17:07 -07:00
Jason Volk
95f67312cf
ircd: This exception is already named in the boost what() string.
2017-10-03 04:17:07 -07:00
Jason Volk
816b5125b2
ircd: Improve/cleanup ircd::init()/ircd::stop() related.
2017-10-03 04:17:07 -07:00
Jason Volk
e69cb9c2e9
ircd::json: Assume this conversion to match the byte_view<string_view> specialization.
2017-09-24 23:52:48 -07:00
Jason Volk
d4508e157f
ircd: Ⓜ️ Deduplicate user related in m::user. Update various resource related.
2017-09-24 20:48:53 -07:00
Jason Volk
ca1f5bbbe5
ircd: Ⓜ️ Fix some id constructor behavior.
2017-09-24 20:48:53 -07:00
Jason Volk
c032c686f6
Checkpoint matrix application basis.
2017-09-24 18:16:45 -07:00
Jason Volk
50eda73d7d
ircd::db: Consistent row validity tests for cursor.
2017-09-24 18:16:45 -07:00
Jason Volk
f060bd4fc5
ircd: Support resource response json::value for array/object values; cleanup.
2017-09-24 18:16:45 -07:00
Jason Volk
fd53e5589a
ircd: Add non-standard explicit bool operator to string_view.
2017-09-24 18:16:45 -07:00
Jason Volk
95657d96de
ircd: Fix semantics.
2017-09-24 18:16:44 -07:00
Jason Volk
2c07ed673a
ircd::fmt: Add snstringf() suite.
2017-09-24 18:16:44 -07:00
Jason Volk
a65a033c3b
ircd::db: Add reverse long int comparator; fix reverse string comparator; cleanup.
2017-09-24 18:16:44 -07:00
Jason Volk
f4682522a8
ircd::util: Rename stopped overload to nostart.
2017-09-24 18:16:44 -07:00
Jason Volk
0b1c37c585
ircd::db: Fix reverse iteration; cleanup seek; add ORDERED flag (prelim).
2017-09-24 18:16:44 -07:00
Jason Volk
7f7ef9a4bf
ircd: Add client request timer related.
2017-09-24 18:16:44 -07:00
Jason Volk
befb76a9d9
ircd::util: Improve timer.
2017-09-24 18:16:44 -07:00
Jason Volk
c138c53449
ircd::db: Log snapshot sequence numbers.
2017-09-24 18:16:44 -07:00
Jason Volk
061e1fa485
ircd::util: timer; add this.
2017-09-24 18:16:44 -07:00
Jason Volk
1a35514653
ircd::db: Fixes for reverse iteration.
2017-09-24 18:16:43 -07:00
Jason Volk
703121f867
ircd::db: Add reverse string_view comparator.
2017-09-24 18:16:43 -07:00
Jason Volk
08a3ccc7ff
ircd: Cleanup vintage string suite.
2017-09-24 18:16:43 -07:00
Jason Volk
7eaffc3188
ircd: Ⓜ️ Fix subobject linkage.
2017-09-24 18:16:43 -07:00
Jason Volk
798f87cac9
ircd::buffer: Minor cleanup.
2017-09-24 18:16:43 -07:00
Jason Volk
b29224aa3a
ircd::db: Cleanup comparator related.
2017-09-24 18:16:43 -07:00
Jason Volk
57bcae7a32
ircd: Update notes.
2017-09-24 18:16:42 -07:00
Jason Volk
b2bf6116b8
ircd::buffer: Improve conversion hierarchy.
2017-09-24 18:16:42 -07:00
Jason Volk
c87934cd4d
ircd::crh: Support SHA256.
2017-09-24 18:16:42 -07:00
Jason Volk
4b17211a04
ircd::buffer: Add raw_buffer for binary data; lexical: simplify a2u/b64 related.
2017-09-24 18:16:42 -07:00
Jason Volk
d7def063b6
ircd: Add tools for binary/hex/b64 conversions.
2017-09-24 18:16:42 -07:00
Jason Volk
ed59ef6e8e
ircd::buffer: Add array operators.
2017-09-24 18:16:41 -07:00
Jason Volk
9acdb31349
ircd::util: Move these macros up the file out of obscurity.
2017-09-24 18:16:41 -07:00
Jason Volk
b207b9e909
ircd: Rename ircd::scope to ircd::unwind.
2017-09-24 18:16:41 -07:00
Jason Volk
b7e1b3cf43
ircd: Split off hash.h from util.h; reorder stdinc headers.
2017-09-24 18:16:41 -07:00
Jason Volk
56074325a1
ircd::db: Use extern const comparators and expose them in headers.
2017-09-24 18:16:41 -07:00
Jason Volk
69eab27209
ircd::db: Complete reverse iterations.
2017-09-24 18:16:41 -07:00
Jason Volk
34be7b1d77
ircd::util: Add enum-flag accumulator util.
2017-09-24 18:16:41 -07:00
Jason Volk
dae391a578
ircd::db: Refactor opts to not store ilists; cleanup index/column relationship; cleanup where.
2017-09-24 18:16:41 -07:00
Jason Volk
48877a31c8
ircd::json: Add until() with two tuple arguments (for comparisons).
2017-09-24 18:16:40 -07:00
Jason Volk
fc753f7440
ircd::db: Add constant time seek to column in row by index number.
2017-09-24 18:16:40 -07:00
Jason Volk
59f9a51404
ircd::db: Cleanup json::tuple assignment related.
2017-09-24 18:16:40 -07:00
Jason Volk
2dece299c0
ircd: Improve resource request body template.
2017-09-24 18:16:40 -07:00
Jason Volk
234a34086f
ircd::db: Improve where semantics.
2017-09-24 18:16:40 -07:00
Jason Volk
15173a1d06
ircd::allocator: Fix namespacing.
2017-09-24 18:16:40 -07:00
Jason Volk
841567bdf8
ircd: Default argument ctor for byte_view.
2017-09-24 18:16:40 -07:00
Jason Volk
46588d0ae8
ircd::db: Public functions to get the descriptor for a column.
2017-09-24 18:16:39 -07:00
Jason Volk
44f3d2cd27
ircd::json: Recursive tuple members.
2017-09-24 18:16:39 -07:00
Jason Volk
7f548cee1c
ircd: Make asio header; comments; add special continuation for yielding to asio.
2017-09-24 18:16:39 -07:00
Jason Volk
a9ac3f9956
ircd: Move ircd::mods::demangle() to ircd::demangle().
2017-09-24 18:16:39 -07:00
Jason Volk
3a56a30d77
ircd: Support char overloads for all tokenizers.
2017-09-24 18:16:38 -07:00
Jason Volk
0d393c58dd
ircd::db: Various cleanup / movements.
2017-09-24 18:16:38 -07:00
Jason Volk
b24d36c70d
ircd: Update date utils.
2017-09-24 18:16:38 -07:00
Jason Volk
1acd278632
ircd::ctx: Updates; add ctx::view; add preliminary ctx::fault; various reorg.
2017-09-24 18:16:38 -07:00
Jason Volk
4c50b2794f
ircd::json: Various fixes/cleanup/conversions.
2017-09-24 18:16:38 -07:00
Jason Volk
38c1d2e195
ircd::json: Complete serialize/stringify for object/object::member.
2017-09-24 18:16:37 -07:00
Jason Volk
676baec73d
ircd::db: Better cursor comparison.
2017-09-24 18:16:37 -07:00
Jason Volk
5e137c676f
ircd::db: Use vector for descriptors.
2017-09-24 18:16:37 -07:00
Jason Volk
92548464d3
ircd::db: Enumerate all deltas.
2017-09-24 18:16:37 -07:00
Jason Volk
c50461c4c6
ircd::db: Rename txn to iov.
2017-09-24 18:16:37 -07:00
Jason Volk
fb026f58a7
ircd::db: Add features to txn.
2017-09-24 18:16:37 -07:00
Jason Volk
d7e9c9182a
ircd::db: Add txn
class to compose a transaction in stages.
2017-09-24 18:16:37 -07:00
Jason Volk
b27a2a6423
ircd::db: Support constant-time column lookup by id; various cleanup/fixes.
2017-09-24 18:16:37 -07:00
Jason Volk
e427caf544
ircd: vector_view<> typdef'ing.
2017-09-24 18:16:36 -07:00
Jason Volk
21b6f5d065
ircd::util: Iterator pair.
2017-09-24 18:16:36 -07:00
Jason Volk
5261f9dd25
ircd::db: row cleanup / fixes.
2017-09-24 18:16:36 -07:00
Jason Volk
7d61dc4441
ircd::db: Reflect with string_view.
2017-09-24 18:16:36 -07:00
Jason Volk
276a902a62
ircd::db: Improve valid checking and valid() suite.
2017-09-24 18:16:36 -07:00
Jason Volk
1f8fb24e8d
ircd: Update various comments.
2017-09-24 18:16:36 -07:00
Jason Volk
c58836ed56
ircd::db: Move set() for json::tuple; check for undefined.
2017-09-24 18:16:36 -07:00
Jason Volk
65802d3e47
ircd::resource: Cleanup JSON iov related; Add exception handlers.
2017-09-24 18:16:36 -07:00
Jason Volk
ceb172a958
ircd::string_view: Add glue constructor and resize().
2017-09-24 18:16:36 -07:00
Jason Volk
8efa3ca438
ircd: Add surrounds() lexical util.
2017-09-24 18:16:36 -07:00
Jason Volk
e71d650d83
ircd::buffer: Add member iterator concept.
2017-09-24 18:16:36 -07:00
Jason Volk
296fd9183b
ircd::util: Add ctype() template for testing string ranges.
2017-09-24 18:16:35 -07:00
Jason Volk
ccbd507c35
ircd::db: Fix issues with cell.
2017-09-24 18:16:35 -07:00
Jason Volk
eaca7429b6
ircd::json: Simplify grammar / various cleanup.
2017-09-24 18:16:35 -07:00
Jason Volk
0a9d7e2ec8
ircd::buffer: Add comment / fix error / minor cleanup.
2017-09-24 18:16:35 -07:00
Jason Volk
04e83c6b90
ircd::buffer: Add copy() overloads.
2017-09-24 18:16:35 -07:00
Jason Volk
8e9a25aa96
ircd::db: Default init invalid row values.
2017-09-24 18:16:35 -07:00
Jason Volk
d3feb23a25
ircd: Add resource response json::iov related conversions for members lists.
2017-09-24 18:16:35 -07:00
Jason Volk
12c7999172
ircd::db: Include a difference_type for distance.
2017-09-24 18:16:35 -07:00
Jason Volk
79cb0b0fd3
ircd::db: Move items out of delta.h
2017-09-24 18:16:35 -07:00
Jason Volk
ca9ea5ac0c
ircd::db: Simplify/fix seek(row).
2017-09-24 18:16:34 -07:00
Jason Volk
b9f6871f1b
ircd: Add string_view strlcat().
2017-09-24 18:16:34 -07:00
Jason Volk
6aacf73dfa
ircd: Remove the tokens container.
2017-09-24 18:16:34 -07:00
Jason Volk
6503d28006
ircd: Simplify this service stack for now.
2017-09-24 18:16:34 -07:00
Jason Volk
6a5159499f
ircd::json: Use ircd::iov for json::iov.
2017-09-24 18:16:34 -07:00
Jason Volk
f8fc03e57b
ircd::json: Improve value semantics and various fixes.
2017-09-24 18:16:34 -07:00
Jason Volk
6c9ad5e513
ircd::db: Remove cruft.
2017-09-24 18:16:34 -07:00
Jason Volk
a0aeb2de2d
configure.ac/Makefile: Add debug conditionals.
2017-09-24 18:16:34 -07:00
Jason Volk
6fb3b44c05
ircd::iov: Support default construction and nullification.
2017-09-24 18:16:34 -07:00
Jason Volk
54d6793f59
Update various documentation and comments.
2017-09-24 18:16:33 -07:00
Jason Volk
7cc4ed56ab
ircd: Support both iov and ilist for socket and buffer related.
2017-09-24 18:16:33 -07:00
Jason Volk
6f29784573
ircd: Fix json::member alias.
2017-09-24 18:16:33 -07:00
Jason Volk
f2bbd9b23e
ircd::buffer: Add missing default constructor for const_buffer.
2017-09-24 18:16:33 -07:00
Jason Volk
2ee4d67b68
ircd: Add iov.
2017-09-24 18:16:33 -07:00
Jason Volk
2003a803ce
ircd::allocator: Add node allocator / reorg fixed/dynamic.
2017-09-24 18:16:33 -07:00
Jason Volk
583432d35b
ircd::mods: Add template to demangle by type.
2017-09-24 18:16:33 -07:00
Jason Volk
aa6cd82fbc
ircd::db: Rename file tuple.h to json.h
2017-09-24 18:16:33 -07:00
Jason Volk
8ad134c565
ircd::json: Rename builder to iov.
2017-09-24 18:16:33 -07:00
Jason Volk
c3a88edeee
ircd: Split string_view out of util::.
2017-09-24 18:16:33 -07:00
Jason Volk
6cd58b0d6a
ircd: Update various comments / minor cleanup.
2017-09-24 18:16:32 -07:00
Jason Volk
e95fe7fbd9
ircd::json: Improve tuple/builder related.
2017-09-24 18:16:32 -07:00
Jason Volk
db748cae81
ircd::resource: Accept json::member for response for now.
2017-09-24 18:16:32 -07:00
Jason Volk
dd12f013cf
ircd::buffer: Proper reference types for buffer / array ctor / cleanup.
2017-09-24 18:16:32 -07:00
Jason Volk
147a49a86c
ircd::json: Improve stringification interface et al.
2017-09-08 07:47:07 -07:00
Jason Volk
77ba8696d9
ircd::json: Commentary / minor cleanup.
2017-09-08 03:47:53 -07:00
Jason Volk
ace878b887
ircd::json: Rename tuple member to property.
2017-09-08 03:47:53 -07:00
Jason Volk
b715b99b0c
ircd::json: Upgrade index::member to json::member.
2017-09-08 03:47:53 -07:00
Jason Volk
1a59218bad
ircd::json: Add builder.
2017-09-08 03:47:53 -07:00
Jason Volk
85b699c286
Various makefile cleanup.
2017-09-08 03:47:53 -07:00
Jason Volk
1cea631f60
ircd::m modules: Matrix reinterface checkpoint.
2017-09-08 03:47:53 -07:00
Jason Volk
a89a8dfa5f
ircd::db: Add preliminary cursor and where clause query.
2017-09-08 03:47:52 -07:00
Jason Volk
d219858e73
ircd::db: Improve commitment stack.
2017-09-08 03:47:52 -07:00
Jason Volk
3ef01bad59
ircd::db: Move enum pos
so the definition is available.
2017-09-08 03:47:52 -07:00
Jason Volk
5f25d90fd2
ircd::db: Add index interface.
2017-09-08 03:47:52 -07:00
Jason Volk
0ffaa0d3d6
ircd::db: Add preliminary tuple specific interface.
2017-09-08 03:47:52 -07:00
Jason Volk
4a24b57035
ircd: Add string_view modern overloads to classic BSD strl*() iface.
2017-09-08 03:47:51 -07:00
Jason Volk
0c145d0fbd
ircd::util: Add complement to std::for_each with our ircd::until().
2017-09-08 03:47:51 -07:00
Jason Volk
481eff3baa
ircd::util: Rename binary_view to byte_view.
2017-09-08 03:47:51 -07:00
Jason Volk
e7650334dc
ircd::util: Move operator!() functions / minor cleanup.
2017-09-08 03:47:51 -07:00
Jason Volk
4eeb1c093d
ircd::http: Proper exception when parse buffer is too small.
2017-09-08 03:47:51 -07:00
Jason Volk
c627095f51
ircd: Add date.h header for date and time utilities.
2017-09-08 03:47:51 -07:00
Jason Volk
b829c5d7ba
ircd::json: Extend interface with some hackses for now but this has to be revisited eventually.
2017-09-08 03:47:51 -07:00
Jason Volk
d99b927c4a
ircd::db: Allow empty delta value with default argument param.
2017-09-08 03:47:51 -07:00
Jason Volk
1e7c0daed2
ircd::db: Improve opts, snapshot, and conversions for column::iterator.
2017-09-08 03:47:51 -07:00
Jason Volk
5eaae24559
m: Improve error/exception.
2017-09-08 03:47:50 -07:00
Jason Volk
96d121c82a
m: Improve mxid class
2017-09-08 03:47:50 -07:00
Jason Volk
892ad69f5b
ircd::util: Add IRCD_USING_OVERLOAD macro; minor cleanup.
2017-09-08 03:47:50 -07:00
Jason Volk
fd3bb037c7
ircd::json: Add value constructor template to attempt cast to string_view.
2017-09-08 03:47:50 -07:00
Jason Volk
dc78c4743d
ircd::util: Simplify.
2017-09-08 03:47:50 -07:00
Jason Volk
f98be1582d
ircd::ctx: Expose stack usage functions to user.
2017-09-08 03:47:50 -07:00
Jason Volk
cbdd176819
ircd::db: Remove unnecessary shared_ptr for column instance.
2017-09-08 03:47:50 -07:00
Jason Volk
e46faaf882
ircd::db: Support prefix indexing.
2017-09-08 03:47:50 -07:00
Jason Volk
69917f153f
ircd::db: Add json::tuple related and utils to row.
2017-09-08 03:47:50 -07:00
Jason Volk
0ca1ebba61
ircd::db: Fix valid condition bugs and minor cleanup.
2017-09-08 03:47:49 -07:00
Jason Volk
4013c301e5
ircd::util: Add binary_view utility.
2017-09-08 03:47:49 -07:00
Jason Volk
19c5e6c83b
ircd::db: Add generalized database delta interface.
2017-09-08 03:47:49 -07:00
Jason Volk
f729fd0917
ircd::db: Expose enum class pos.
2017-09-08 03:47:49 -07:00
Jason Volk
e583c0885d
ircd::db: Improve seek() interface suite.
2017-09-08 03:47:49 -07:00
Jason Volk
fa0ad99df6
ircd: Add fixed alignment to dynamic allocator for now.
2017-09-08 03:47:49 -07:00
Jason Volk
62a68d8931
ircd::db: Use pointers in the delta tuple for more flexible semantics.
2017-09-08 03:47:49 -07:00
Jason Volk
81bd73f6f0
ircd::json: Add boolean constructor for literal rep.
2017-09-08 03:47:49 -07:00
Jason Volk
d9a4f06bf6
ircd: Employ namespace scope extensions from c++1z/gnu++14.
...
This is not a move to c++17. If the compiler happens to have support
for c++17 namespace scope resolution, they have been kind enough to
backport it to gnu++14. This limits our support for really old c++14
compilers, but that was limited anyway. GCC 6.1 and clang 3.6 tested.
2017-09-08 03:47:46 -07:00
Jason Volk
28cf226c3a
ircd::mods: Add cxx abi name demangling.
2017-09-08 03:46:43 -07:00
Jason Volk
f7c1e43ae9
ircd::db: Abort the object.
2017-09-08 03:45:09 -07:00
Jason Volk
121670d1a8
ircd::json: Minor comment cleanup.
2017-09-08 03:45:09 -07:00
Jason Volk
7f92c1243c
ircd::json: Refactor tuple and settle for extern member name strings.
2017-09-08 03:45:09 -07:00
Jason Volk
bc19a795d8
ircd::json: Rename parse to tuple.
2017-09-08 03:45:09 -07:00
Jason Volk
7bfaa5ec08
ircd::json: Commentary on array.
2017-08-25 15:36:29 -07:00
Jason Volk
e567293dde
ircd: Add commentary to life_guard.
2017-08-25 13:21:52 -07:00
Jason Volk
207ac4ef53
ircd: Various improvements to client and socket related.
2017-08-23 15:52:15 -06:00
Jason Volk
2411cc5b9d
ircd: Add stdinc.h commentary.
2017-08-23 15:52:15 -06:00
Jason Volk
d9f13ee3f1
fixup! ircd::db: Various improvements to DB subsystem.
2017-08-23 15:52:15 -06:00
Jason Volk
a9f52a70b2
ircd::json: Add commentary; Add path related.
2017-08-23 15:52:15 -06:00
Jason Volk
413d5d22a9
ircd::http: Add minor commentary.
2017-08-23 15:52:15 -06:00
Jason Volk
f1111b2695
fixup! ircd::db: Various improvements to DB subsystem.
2017-08-23 15:52:15 -06:00
Jason Volk
b16dc9598a
ircd::util: Add additional array-based constructors to string_view.
2017-08-23 15:52:15 -06:00
Jason Volk
1121d99f18
ircd::util: Fix typo.
2017-08-23 15:52:15 -06:00
Jason Volk
ca608402f5
ircd::db: Various improvements to DB subsystem.
2017-08-23 15:52:15 -06:00
Jason Volk
00b27909a0
ircd: Make client enable_shared_from_this.
2017-08-23 15:52:15 -06:00
Jason Volk
823387da4e
fixup! ircd::json: Improve object interface; remove dot traversal.
2017-08-23 15:52:15 -06:00
Jason Volk
74da170996
fixup! ircd::json: Add comment for struct object
2017-08-23 15:52:15 -06:00
Jason Volk
df87d820e1
ircd::json: Improve object interface; remove dot traversal.
2017-08-23 15:52:15 -06:00
Jason Volk
e99b22de6f
ircd::json: Add comment for struct object
2017-08-23 15:52:15 -06:00
Jason Volk
9bbe7b8b4d
ircd::db: Add schema_error exception; use for bad column names.
2017-08-23 15:52:15 -06:00
Jason Volk
8acd5f5ec9
ircd::util: Add binary_view convenience cast to string_view.
2017-08-23 15:52:15 -06:00
Jason Volk
48148c640c
ircd: Add std::random subsystem and utils.
2017-08-23 15:52:15 -06:00
Jason Volk
fa41c1db5f
ircd: Ⓜ️ Reorg location of database descriptions.
2017-08-23 15:52:14 -06:00
Jason Volk
88201f4e32
ircd::db: Additional comments and explanations.
2017-08-23 15:52:14 -06:00
Jason Volk
5fe03e5c0a
ircd::mods: Add unpostfixed() and postfixed() for module names.
2017-08-23 15:52:14 -06:00
Jason Volk
fe5614387e
ircd::listen: Add string options overload.
2017-08-23 15:52:14 -06:00
Jason Volk
6db3c55f74
ircd::fs: Add directory creation.
2017-08-23 15:52:14 -06:00
Jason Volk
7a9f765faa
ircd::util: Minor clarifications to va_rtti.
2017-08-23 15:52:14 -06:00
Jason Volk
77a6bc2d51
ircd::util: Simplify unique_iterator related.
2017-08-23 15:52:14 -06:00
Jason Volk
ad611c5aa5
Complete the unique_buffer semantics.
2017-08-23 15:52:14 -06:00
Jason Volk
77900b61af
ircd: Remove unnecessary lexical template specialization declaration.
2017-08-23 15:52:14 -06:00
Jason Volk
0149610bb2
ircd: Various matrix library / modules / database development.
2017-08-23 15:51:34 -06:00
Jason Volk
10472684f2
ircd: Cleanup client/ircd main. Fixes for exit notification.
2017-08-23 15:50:37 -06:00
Jason Volk
a32210a64d
ircd: Support proper socket disconnect for SSL.
2017-08-23 15:49:33 -06:00
Jason Volk
30d838aec3
fixup! ircd::json/modules: Rename various types.
2017-08-23 15:47:21 -06:00
Jason Volk
a7cb94d042
ircd: Add listener device.
2017-08-23 15:42:53 -06:00
Jason Volk
b5c72c38f0
fixup! fixup! ircd: Remove aborted cruft.
2017-08-23 15:41:20 -06:00
Jason Volk
b0f5020c19
ircd: Cleanup/comment stdinc.h; move init util to util.h
2017-08-23 15:40:33 -06:00
Jason Volk
e09f272592
ircd::db: Improve/comment DB subsystem; Add version identification.
2017-08-23 15:38:51 -06:00
Jason Volk
ec8349bf4f
ircd::mods: Add better interface to execute function from imported symbol.
2017-08-23 15:35:11 -06:00
Jason Volk
48045d5b23
fixup! ircd::js: Upgrade SpiderMonkey to esr52 from esr45.
2017-08-23 15:34:55 -06:00
Jason Volk
3610dd9f9b
ircd::ctx: Minor fix.
2017-08-23 15:34:22 -06:00
Jason Volk
4fd787d9d5
ircd::json/modules: Rename various types.
2017-08-23 15:32:28 -06:00
Jason Volk
c9e947e66f
ircd: Remove aborted cruft.
2017-08-23 15:27:41 -06:00
Jason Volk
4d4a56fe9c
ircd::js: Upgrade SpiderMonkey to esr52 from esr45.
2017-08-23 15:25:22 -06:00
Jason Volk
6e44074bad
ircd: Various client / listener / main related.
2017-08-23 15:13:57 -06:00
Jason Volk
c1ef99c0cd
ircd::conf: Doomed conf related.
2017-08-23 15:12:16 -06:00
Jason Volk
a3117391b5
ircd/modules: Preliminary matrix scaffold.
2017-08-23 15:10:28 -06:00
Jason Volk
30fb1d59d7
ircd: Preliminary resource handler infrastructure.
2017-08-23 15:06:14 -06:00
Jason Volk
2172b39f9e
ircd::js: Minor fixes to JS subsystem.
2017-08-23 15:04:45 -06:00
Jason Volk
6dbc9201f1
ircd::json: Add preliminary map and object.
2017-08-23 15:01:58 -06:00
Jason Volk
a880e2e43e
ircd::ctx: Add minor commentary.
2017-08-23 14:59:27 -06:00
Jason Volk
7197491364
ircd::util: Add constexpr kronecker delta.
2017-08-23 14:58:21 -06:00
Jason Volk
3d536d26b6
ircd::util: Fixes to constexpr tuple utils.
2017-08-23 14:57:58 -06:00
Jason Volk
9ea5eceb0e
ircd::fs: Add function to read file from local filesystem.
2017-08-23 14:56:52 -06:00
Jason Volk
22419a2087
ircd::util: Improve tuple related utils and iterations.
2017-04-07 16:00:18 -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
5b40a9ad91
ircd: Assurances the full-transfer socket methods do just that.
2017-04-06 17:46:26 -07:00
Jason Volk
8955328479
ircd::util: Add basic STL map transformation functors.
2017-04-06 17:45:50 -07:00
Jason Volk
229a222ff6
fixup! ircd: Add more HTTP status mappings.
2017-04-06 17:08:40 -07:00
Jason Volk
6097e82974
ircd: Add more HTTP status mappings.
2017-04-06 16:54:20 -07:00
Jason Volk
a79d1ab342
ircd::util: Add pop_back()/pop_front() to string_view.
2017-04-04 16:10:29 -07:00
Jason Volk
15d9b638f6
ircd::mods: Better support for std::shared_ptr import between modules.
2017-04-04 16:10:29 -07:00
Jason Volk
760e47247e
ircd: QoA on conventional semantics of some lexical functions.
2017-04-04 16:10:29 -07:00
Jason Volk
669c12418a
ircd: Add functors for iless/iequals/igreater.
2017-04-04 16:10:29 -07:00
Jason Volk
e43b67d146
ircd::util: Add RAII container for iterators.
2017-04-04 16:10:29 -07:00
Jason Volk
bd772a4452
ircd::buffer: Add std::ostream support.
2017-04-04 16:10:29 -07:00
Jason Volk
ca98521265
fixup! fixup! ircd: Minor cleanup.
2017-04-04 16:10:29 -07:00
Jason Volk
fe90841b8a
ircd::mods: Minor cleanup.
2017-04-04 16:10:29 -07:00
Jason Volk
17926e095f
ircd::mods: Add workaround for dlclose() recursion issue.
2017-04-04 16:10:29 -07:00
Jason Volk
e7844a0771
ircd::db: Database system developments.
2017-04-04 16:10:29 -07:00
Jason Volk
bcccddbf3f
ircd::http: Add query string support; cleanup grammar; minor cleanup.
2017-04-04 16:10:28 -07:00
Jason Volk
cb96d59579
ircd::http: Update status codes.
2017-04-04 16:10:28 -07:00
Jason Volk
673c8ca068
ircd::json: Add val::empty() and full default initialization.
2017-04-02 20:54:35 -07:00
Jason Volk
ff84531ea3
ircd::json: Add get<string_view>() to doc.
2017-04-02 20:53:56 -07:00
Jason Volk
b579d7dfc3
ircd::ctx: Add strand()/notify() with threadsafe_t.
2017-04-02 20:52:30 -07:00
Jason Volk
a89d499557
ircd::ctx: Bring sleep() into ircd:: namespace.
2017-04-02 20:51:47 -07:00
Jason Volk
35587a5c9c
ircd: Add another allocator.
2017-04-02 20:50:59 -07:00
Jason Volk
5f70ce28d0
ircd::util: Document string_view::insert().
2017-04-02 20:50:32 -07:00
Jason Volk
0a1bf7f47f
ircd::util: Add iterator pair type.
2017-04-02 20:18:54 -07:00
Jason Volk
a8e6f4fb0a
ircd::util: Add vector_view.
2017-04-02 20:18:38 -07:00
Jason Volk
bd383562fd
ircd: Fix semantic error.
2017-04-01 18:02:46 -07:00
Jason Volk
a2625b9f4b
fixup! ircd::db: Develop object-store out of db system.
2017-03-30 18:18:28 -07:00
Jason Volk
16c1326d40
ircd::db: Develop object-store out of db system.
2017-03-30 16:04:20 -07:00
Jason Volk
2ffab411df
ircd::json: Various fixes to JSON subsystem.
2017-03-30 16:04:20 -07:00
Jason Volk
1a4139ffaf
ircd::mods: Improve symbol pointer.
2017-03-30 16:04:20 -07:00
Jason Volk
acf948ef8f
ircd: Add unquote() for rvalue references to strings (won't copy).
2017-03-30 16:04:20 -07:00
Jason Volk
13862c6f2a
ircd: Swap the allocator/allocator::state object for better usability.
2017-03-30 16:04:20 -07:00
Jason Volk
3a31c62681
ircd: Minor cleanup.
2017-03-30 16:04:20 -07:00
Jason Volk
2e7dd1e5ad
ircd::fs: Fixes/renames to local filesystem support subsystem.
2017-03-30 16:04:19 -07:00
Jason Volk
c604b391be
ircd::ctx: Support direct context switching without enqueueing with ios.
2017-03-30 16:04:19 -07:00
Jason Volk
8ef53f2640
ircd: Move and improve socket listener device.
2017-03-30 16:04:19 -07:00
Jason Volk
ad47435876
ircd: Complete linkage requirements for lex_cast template.
2017-03-30 16:04:19 -07:00
Jason Volk
a366731a4b
ircd::db: Support column families.
2017-03-30 16:04:19 -07:00
Jason Volk
3ad1851388
ircd: Additional lexical utils/overloads; increase lex_cast buffers.
2017-03-30 16:04:19 -07:00
Jason Volk
c2ca0637a7
ircd::util: Expand the va_rtti array to 12 elements (192 bytes).
2017-03-30 16:04:19 -07:00
Jason Volk
c8953c038d
ircd::util: Add non-const overloads to tuple iterations.
2017-03-30 16:04:19 -07:00
Jason Volk
5a7852a0d4
ircd: Various cleanup.
2017-03-30 16:04:19 -07:00
Jason Volk
1f6d83b5b1
ircd::db: additional support: stats, callbacks and merge operator.
2017-03-30 16:04:18 -07:00
Jason Volk
7ae5785431
ircd::json: Add merge constructor.
2017-03-30 16:04:18 -07:00
Jason Volk
4d2e41970b
ircd::json: Add has()/get() to json::doc.
2017-03-30 16:04:18 -07:00
Jason Volk
0d09170507
ircd::db: Leverage the RocksDB WriteBatch with an initializer_list.
2017-03-30 16:04:18 -07:00
Jason Volk
21db4baab3
ircd: Various cleanup.
2017-03-30 16:04:18 -07:00
Jason Volk
6a0e5e4de5
ircd::mods: Add sym_ptr/sym_ref to link symbols with a typed object.
2017-03-20 21:29:29 -07:00
Jason Volk
9ed8716569
fixup! What is the Matrix? Control.
2017-03-20 19:24:18 -07:00
Jason Volk
91cd0327bd
ircd::fmt: Remove rfc1459 builtin specifiers; various/cleanup.
2017-03-20 19:20:33 -07:00
Jason Volk
e061f7326f
ircd::util: Follow up for_each() with tuple until().
2017-03-20 19:13:12 -07:00
Jason Volk
fdfefff72e
ircd: Various additional commentary.
2017-03-20 18:04:57 -07:00
Jason Volk
99eacb0932
ircd::util: Add tuple for_each iterator.
2017-03-20 18:04:19 -07:00
Jason Volk
7c09e801ef
fixup! ircd::lexical: Split params into header.
2017-03-20 04:31:58 -07:00
Jason Volk
1c27e4e4c7
ircd: Add split()/rsplit() char delim overload.
2017-03-20 04:29:57 -07:00
Jason Volk
31904bafc0
fixup! ircd: Add lex_cast wrapper interface; various cleanup.
2017-03-20 04:29:34 -07:00
Jason Volk
3badb2ff90
ircd: JSON subsystem related.
2017-03-20 04:27:11 -07:00
Jason Volk
95a52a4ab7
ircd::util: Add scope::nominal and scope::exceptional constructs.
2017-03-19 23:59:11 -07:00
Jason Volk
50b2942131
ircd::buffer: Add iov serializers.
2017-03-19 23:58:26 -07:00
Jason Volk
24fb856ac4
ircd::lexical: Split params into header.
2017-03-19 23:46:36 -07:00
Jason Volk
f07c677613
ircd: Remove rogue include.
2017-03-19 23:45:58 -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
501ff60276
fixup! fixup! fixup! ircd: Add the va_rtti construct.
2017-03-17 23:29:25 -07:00
Jason Volk
52e010174c
fixup! ircd: Add lex_cast wrapper interface; various cleanup.
2017-03-17 23:02:43 -07:00
Jason Volk
96ff6c8a4d
fixup! fixup! ircd: Add the va_rtti construct.
2017-03-17 22:37:54 -07:00
Jason Volk
3c38aeb96e
ircd: Nest this ep initializer for now.
2017-03-17 20:35:00 -07:00
Jason Volk
710d959a63
ircd::json: Cleanup/improve grammar; improve linear array parse (incomplete).
2017-03-17 20:33:47 -07:00
Jason Volk
4b7372c4a8
fixup! ircd: Add labeled-params tokenizer; fix bad lexical cast exception type.
2017-03-17 20:30:55 -07:00
Jason Volk
1016e993e9
ircd: Optimal HTTP status code and content length parsing.
2017-03-17 20:29:27 -07:00