1a82e4fe76
build: transition from experimental filesystem
2018-12-05 19:12:03 +11:00
2ad86d28a5
posix/except: add try_call
2018-09-10 12:36:42 +10:00
4fd20d2acf
posix/fd: move definition of O_BINARY into public header
2018-08-31 13:57:31 +10:00
1392fb40c9
posix/fd: define O_BINARY for systems without it
2018-08-28 13:01:55 +10:00
8c05cf2e1c
posix/fd: double check the user has specified binary mode
2018-08-27 14:17:50 +10:00
1b5dfe437a
posix/fd: make dup const
...
It's not strictly semantically correct, but it greatly simplifies reference
parameter binding in win32 memory mapping
2018-08-22 21:32:43 +10:00
b60aaccf6f
build; fix compilation errors under win32
...
win32 builds are still totally unsupported, untested, and functionally
broken.
2018-08-13 14:52:40 +10:00
f6056153e3
rename root namespace from util to cruft
...
This places, at long last, the core library code into the same namespace
as the extended library code.
2018-08-05 14:42:02 +10:00
803acc9a87
relicense under MPL-2.0
2018-08-04 15:14:06 +10:00
1b92ac5f61
posix/socket: add defaulting wrapper for recvfrom
2018-07-27 21:06:25 +10:00
d99b257268
posix/socket: add wrappers for sendto and recvfrom
2018-07-27 18:29:43 +10:00
f0eb3f0775
posix/socket: add wrappers for connect and bind
2018-07-27 18:29:30 +10:00
cf800a35da
move construction/assignment should be noexcept where possible
2018-07-24 15:48:50 +10:00
a4844fa7ed
posix/except: add 'what' member for code class
2018-07-05 13:45:10 +10:00
5b9eae9b25
posix/except: add templated error_code
2018-04-01 14:43:28 +10:00
0e3fa05f05
build: migrate from ipp files to pure hpp files
...
ipp files weren't a great way of keeping things clean, and IDEs have a
little trouble dealing with the split configuration. this simplifies
debugging a great deal.
2018-02-28 11:49:13 +11:00
1f270f760f
posix/fd: increment iterators by sizeof(ValueT) not byte count
2018-02-26 10:54:55 +11:00
8c8a252d9f
build: prefer nodiscard over warn_unused_result
2018-02-01 13:47:42 +11:00
fd03c344b2
fd: remove const from members that modify fd state
2018-02-01 13:47:14 +11:00
9045e16476
io: expose only view style read/write from io module
...
Allow the destination file-like object to implement whatever style
writers and readers they want, but don't expose those directly via the
io module.
2018-01-31 19:30:48 +11:00
0f450b5b1c
p/socket: correctly iterate through name lookups
2017-12-30 13:40:04 +11:00
a979b253f5
socket: correctly iterate over lookup entries
2017-12-26 17:27:36 +11:00
39894b5619
fd: add read/write methods for views
2017-12-26 17:26:53 +11:00
fe979fc2a9
fd: add reset and release methods
2017-12-26 17:25:58 +11:00
ce64396da4
posix/socket: add a convenience wrapper for sockets
2017-12-22 18:38:30 +11:00
a6af7a8657
posix/fd: add explicit native conversion function
2017-12-22 18:34:30 +11:00
d80855aedf
posix/except: add exception class for EAI_* codes
2017-12-22 18:34:00 +11:00
bfcd63ec65
posix/fd: add read overloads that take char/byte views
2017-12-19 18:18:10 +11:00
abfc3c7878
except: move posix/win32 exceptions to own units
2017-12-19 18:18:10 +11:00
c22a5a2a07
posix/fd: prefer error::try_value over explicit checks
2017-12-18 15:57:43 +11:00
77c88438d4
except: move posix/win32 exceptions to own units
2017-12-18 15:46:52 +11:00
34788756d2
build: don't use './' as an include prefix
...
GCC produces ODR error when including paths of the form './foo' and
'foo' in the same binary. Rather than managing duplication we just
universally pick the absolute form over the relative form.
2017-11-22 16:49:37 +11:00
09de734185
posix/fd: label write/read calls with warn_unused
2017-02-20 18:10:04 +11:00
353cf839d4
use nested namespace declarations
2017-01-05 15:06:49 +11:00
c4bb04dee7
build: add posix forward decl
2016-10-14 18:01:16 +11:00
9a798446b5
build: remove unnecessary includes
...
discovered with include-what-you-use
2016-10-12 15:08:22 +11:00
5a810010fe
posix/fd: add lseek member function
2016-10-11 20:58:31 +11:00
4196702b38
posix/fd: add read and write member functions
2016-10-11 20:58:19 +11:00
598c5d4e48
change const char paths to std::filesystem::path
2016-10-08 17:18:18 +11:00
ea5c3befe4
posix/fd: default open mode to 0666
2016-10-07 18:15:07 +11:00
51c8ee84ca
posix/fd: add std::string overloads for paths
2016-10-07 18:14:56 +11:00
08249f530e
posix/map: add missing empty method
2016-10-02 16:39:47 +11:00
b949b90dd7
posix/fd: add more comments
2016-10-02 16:34:40 +11:00
4608c65c84
posix/map: start extracting pure mmap class
2016-10-02 16:18:41 +11:00
152a55ad78
Merge remote-tracking branch 'origin/master'
2016-10-02 16:13:31 +11:00
790728d3b1
posix/fd: extract file descriptor into own unit
2016-10-02 15:50:13 +11:00
e17158b0bb
build: add forgotten cxx headers
...
discovered testing clang 3.8 under freebsd
2016-05-12 17:31:33 +10:00
1cdc6b4bad
use more explicit constructors
2016-03-17 18:14:40 +11:00
fbd221a739
posix/dir: add variadic args to directory scanning
2016-02-25 13:18:07 +11:00
960448b6ac
posix: add dir wrapper
2015-08-10 15:50:12 +10:00