Commit Graph

16 Commits

Author SHA1 Message Date
Peter Johnson
e45b6e0f65 Fix typo in priority_condition_variable. (#51) 2017-11-12 22:11:08 -08:00
Peter Johnson
9d8a508cd5 Add priority_mutex and priority_condition_variable. (#50)
Also provide wpi::mutex and wpi::condition_variable as wrappers for these
on Linux (where they're available), and for std::mutex and
std::condition_variable on other platforms.
2017-11-12 20:56:29 -08:00
Peter Johnson
c9ead29f44 SafeThread: Simplify m_lock assignment. (#49)
Instead of construct-and-swap, just use the move operator=.
2017-11-12 20:10:55 -08:00
Peter Johnson
3faecdb353 Add SHA1 algorithm implementation. (#32)
Largely based on https://github.com/vog/sha1 with some customizations and
optimizations.
2017-09-10 17:21:19 -07:00
Peter Johnson
041563f8ea Change UidVector to be LRU with a reuse threshold. (#29)
This keeps indexes from being instantly reused and reduces the risk of
accidentally using an old index.

Also change erase and emplace_back to return 0-based instead of 1-based
indexes.

This is a breaking change, but a noisy one due to the template parameter
change.
2017-09-06 19:54:58 -07:00
Thad House
c3f7c85f8a Adds wpi GetHostname function (#25) 2017-08-27 21:35:34 -07:00
Peter Johnson
fa7d5bc023 Add UidVector (used in both ntcore and cscore Notifier). (#22) 2017-08-14 22:58:11 -07:00
Peter Johnson
855df5d679 raw_mem_istream: Add StringRef constructor. 2017-08-13 12:18:19 -07:00
Peter Johnson
c8d9cc7e5b Add filename constructor to raw_fd_istream. 2017-08-13 12:18:19 -07:00
Peter Johnson
7d9e6b7e22 Move ReadLine into raw_istream class as getline. (#20) 2017-08-13 00:56:35 -07:00
Peter Johnson
17b5cace5b Base64: Add raw_ostream and SmallString interfaces. (#19) 2017-08-13 00:55:56 -07:00
Peter Johnson
7e011bda6f Add HTTP utilities. (#7)
Imported from cscore.
2017-08-06 23:28:21 -07:00
Peter Johnson
301442ee43 Add json support to wpiutil.
This is a modified version of https://github.com/nlohmann/json.

It's been moved into the wpi namespace as many of the changes are not
compatible.  The amount of template code has been significantly reduced,
enabling many functions to be moved out-of-line, and for the result to
build on older compiler versions (in particular GCC 4.8).
2017-07-28 21:55:03 -07:00
Peter Johnson
9385d1b6d8 GetJavaStackTrace: Provide llvm::StringRef excludeFuncPrefix. (#3)
This is a bit cleaner to use than the templated version (many compilers
have issues with templating on static strings, for example).
2017-07-28 18:08:54 -07:00
Peter Johnson
b90653f3e3 Logger: Add def_func and min_level constructors. (#2) 2017-07-28 18:08:31 -07:00
Thad House
1243cf04ea Adds new build system to repo (#1) 2017-07-28 07:29:49 -07:00