Phillip Stephens
d72163ad27
Merge pull request #8 from lioncash/bind
...
Listener: Remove unnecessary bind() within start()
2019-09-03 19:55:03 -07:00
Phillip Stephens
fb3d880b63
Merge pull request #7 from lioncash/assignment
...
Listener: Simplify assignment within accept()
2019-09-03 19:54:45 -07:00
Phillip Stephens
ebe78edac7
Merge pull request #6 from lioncash/constexpr
...
Listener: Move port constants into cpp file
2019-09-03 19:54:27 -07:00
Phillip Stephens
092f7dd0f2
Merge pull request #5 from lioncash/array
...
Endpoint: Use std::array where applicable
2019-09-03 19:54:02 -07:00
Lioncash
be121a1bb9
Listener: Remove unnecessary bind() within start()
...
std::thread already handles execution of member functions
out-of-the-box.
2019-09-03 10:18:52 -04:00
Lioncash
33908dd86a
Listener: Simplify assignment within accept()
...
We can just assign to the ret variable directly.
2019-09-03 10:15:33 -04:00
Lioncash
4538b20e73
Listener: Use C++17 deduction guides for mutex locks
...
Same thing, but without hardcoding the mutex type.
2019-09-03 10:13:30 -04:00
Lioncash
04ea97ac8e
Listener: Move port constants into cpp file
...
These are a complete internal detail, so we can hide them from the
header entirely.
2019-09-03 10:07:14 -04:00
Lioncash
5a97e587b6
Endpoint: Use std::array where applicable
...
Makes the interface a little more strongly-typed, and in some cases
makes it less likely to pass in invalid data.
2019-09-03 09:54:50 -04:00
Phillip Stephens
dff87c2c6a
Merge pull request #3 from lioncash/include
...
General: Amend includes where applicable
2019-09-03 00:36:09 -07:00
Phillip Stephens
417e79f924
Merge pull request #4 from lioncash/zero
...
General: Use list initialization where applicable
2019-09-03 00:35:57 -07:00
Lioncash
9f7c855acd
General: Use list initialization where applicable
...
Same behavior, but without the need for separating the assignment from
the declaration
2019-09-03 00:55:06 -04:00
Lioncash
714e88bb7a
Socket: Add missing noexcept specifier to LastWSAError()
...
This is used within a noexcept function, so it needs the noexcept
specifier.
2019-09-03 00:27:30 -04:00
Lioncash
d4891f187f
General: Amend includes where applicable
2019-09-03 00:26:08 -04:00
Phillip Stephens
a79aeacfb9
Add missing `noexcept` decorators
2019-08-23 01:32:16 -07:00
Phillip Stephens
876c4dcde4
Merge pull request #2 from lioncash/noexcept
...
Socket: Mark interface noexcept where applicable
2019-08-22 18:35:49 -07:00
Lioncash
0e24aad20e
Socket: Mark interface noexcept where applicable
...
Move constructors should always be marked noexcept, otherwise the object
cannot be placed into most standard library containers (as they
generally use std::move_if_noexcept to enforce strong exception
guarantees), and if this is false, then the container will fallback to
attempting to copy construct the object. Naturally, this cannot occur
without compilation errors for objects that have their copy constructor
and copy-assignment operators deleted (like Socket).
While we're at it, we can make most of the socket interface noexcept,
given they just forward to the POSIX socket functions.
2019-08-14 10:16:44 -04:00
Phillip Stephens
87cbb52a33
Merge pull request #1 from lioncash/explicit
...
General: Make operator bool overloads and single-arg constructors exp…
2019-08-14 07:04:02 -07:00
Lioncash
6ce7c38e24
General: Make operator bool overloads and single-arg constructors explicit
...
Prevents various error-prone cases of implicit conversion to bool, while
retaining general conversions within conditional statements. We also
disable implicit conversions with constructors that may be ambiguous to
enforce being clear with intentions.
2019-08-14 10:00:01 -04:00
Jack Andersen
8d356cb3da
Make stuff constexpr
2019-07-19 18:23:46 -10:00
Jack Andersen
e61237209d
Better CMake dependency handling
2019-06-11 16:03:39 -10:00
Jack Andersen
9dd968dd66
Ensure time.h is included
2019-04-06 19:00:24 -10:00
Jack Andersen
e28b6551d0
New code style refactor
2018-12-07 19:20:55 -10:00
Jack Andersen
500f88d7a7
Convert to pragma once
2018-10-06 17:42:04 -10:00
Jack Andersen
349263a88c
Logging changes
2018-02-04 20:55:20 -10:00
Jack Andersen
c06141af1e
Stack reference bug fix
2018-01-13 20:43:00 -10:00
Jack Andersen
8593e06fa5
Update copyright date
2018-01-02 14:25:24 -10:00
Jack Andersen
2098e8da29
Isolate WinSock2 header to translation unit
2017-12-29 15:08:45 -10:00
Jack Andersen
3b94b2d400
Huge compile performance refactor
2017-12-28 22:05:42 -10:00
Jack Andersen
34860de248
Remove optional.hpp dependency
2017-12-06 18:09:57 -10:00
Jack Andersen
b1f9b08d25
Require CMake 3.10
2017-11-13 18:52:22 -10:00
Jack Andersen
ec0589ec23
string_view refactor
2017-11-12 20:18:02 -10:00
Jack Andersen
3c4a99fbe8
apply CMAKE_CXX_STANDARD
2017-06-17 16:51:58 -10:00
Jack Andersen
b8c42676ce
Minor reorganization; bind to localhost to prevent Windows Firewall alert
2017-01-21 15:38:02 -10:00
Jack Andersen
9db987d3dd
Merge branch 'master' of https://github.com/AxioDL/jbus
2017-01-07 16:52:15 -10:00
Jack Andersen
0153e0ee6a
Add ability to change SI channel and detect disconnections
2017-01-07 16:51:38 -10:00
Jack Andersen
d7147cd3f7
Typo Fix
2017-01-07 14:22:49 -10:00
Phillip Stephens
b82c928e45
FreeBSD fix
2017-01-07 16:20:46 -08:00
Jack Andersen
4699542f93
Add Doxygen comments
2017-01-07 13:55:41 -10:00
Phillip Stephens
a3fe0a3a25
Fix compiling on linux
2017-01-07 15:31:23 -08:00
Jack Andersen
42f1b86627
Use blocking I/O for transfer thread
2017-01-07 11:19:25 -10:00
Jack Andersen
e161ef15fa
Remove unnecessary setBlocking calls
2017-01-06 22:50:40 -10:00
Jack Andersen
e65f42c843
Disable logging macros
2017-01-06 22:28:58 -10:00
Jack Andersen
c34b81ad6c
Win32 compatibility fixes
2017-01-06 22:24:16 -10:00
Jack Andersen
ed1adfee0d
More lenient timeout
2017-01-06 19:26:13 -10:00
Jack Andersen
9b2b1fd1e6
Use /lib rather than /src
2017-01-06 19:00:40 -10:00
Jack Andersen
52eae7421b
Add general-purpose JoyBoot utility
2017-01-06 18:57:28 -10:00
Jack Andersen
ab163e856a
Initial commit
2017-01-06 17:13:23 -10:00