Commit Graph

63 Commits

Author SHA1 Message Date
Max Kellermann 8ba68fdb47 io/OutputStream: use std::span 2023-05-21 21:35:11 +02:00
Max Kellermann e72d27566c io/BufferedOutputStream: use std::string_view 2023-05-21 21:31:32 +02:00
Max Kellermann 02296adbba io/FileDescriptor: include cleanup 2023-03-12 20:18:13 +01:00
Max Kellermann a375f0f160 io/BufferedReader: add method ReadFullT() 2023-03-12 20:15:41 +01:00
Max Kellermann a79454f6a6 io/FileDescriptor: fold CreateSignalFD() into the SignalFD constructor 2023-03-09 18:04:58 +01:00
Max Kellermann b5fbfe9aa6 io/FileDescriptor: fold CreateEventFD() into the EventFD constructor 2023-03-09 17:59:56 +01:00
Max Kellermann dbfd0a833d io/meson.build: move sources to libio_fs.a
Only that one has a dependency on libfs.a (for class AllocatedPath
etc.).
2023-03-07 12:48:47 +01:00
Max Kellermann 415de497d3 use more libfmt instead of sprintf() 2023-03-06 19:50:53 +01:00
Max Kellermann 2ffc7c2088 io/BufferedOutputStream: remove unused method Format() 2023-03-06 16:27:28 +01:00
Max Kellermann 42f6a0441c use [[gnu::...]] attributes 2023-03-06 16:14:15 +01:00
Max Kellermann 148aca23be use SPDX IDs, replacing the long copyright headers 2023-03-06 14:59:48 +01:00
Max Kellermann 5c2a576546 io/BufferedReader: add missing include 2023-03-05 08:43:41 +01:00
Max Kellermann 8a7b7dffec Merge branch 'v0.23.x' 2023-01-06 08:12:38 +01:00
Max Kellermann f6f8751332 io/FileReader: add missing include for uint64_t 2023-01-02 14:27:47 +01:00
Max Kellermann fa58db798b lib/fmt/RuntimeError: new library
Replacing FormatRuntimeError().
2022-11-29 14:10:34 +01:00
Max Kellermann 66029c405f system/FmtError: move to lib/fmt/ 2022-11-28 23:09:27 +01:00
Max Kellermann 96ae659fdf system/FmtError: new library
Replaces the Format*() functions in system/Error.hxx.
2022-11-28 21:56:12 +01:00
Max Kellermann 88d5347d94 Log, client/Response, io/BufferedOutputStream: remove unnecessary libfmt include 2022-11-28 20:44:48 +01:00
Max Kellermann 7f3868727b Log, client/Response, io/BufferedOutputStream: drop support for libfmt < 7
Remove some compatibility code.
2022-11-28 20:17:16 +01:00
Max Kellermann fb5d77158a util/IntrusiveList: add enum LinkMode
Compile-time code simplification.
2022-11-13 08:15:47 +01:00
Max Kellermann bbc82a9892 io/FileDescriptor, net/SocketDescriptor: make lots of methods "const"
Only the file descriptor value itself is const, but the file itself
may be readable/writable.
2022-11-09 19:19:20 +01:00
Max Kellermann 69596106d3 io/FileDescriptor: add pread() wrapper 2022-11-09 19:18:41 +01:00
Max Kellermann 0c98d93e9a io/FileOutputStream: write to temporary file if O_TMPFILE is not available 2022-07-14 18:45:33 +02:00
Max Kellermann 150e8f78bf io/FileOutputStream: use fsync() if fdatasync() is unavailable
Fixes the macOS build which apparently doesn't implement the POSIX
function fdatasync().
2022-07-14 18:34:44 +02:00
Max Kellermann cc0def15c4 Copyright year 2022 2022-07-14 17:59:35 +02:00
Max Kellermann 2670bbdcc8 io/FileOutputStream: simplify OpenTempFile() call 2022-07-14 15:47:10 +02:00
Max Kellermann bd3e096411 io/FileOutputStream: move code to Delete() 2022-07-14 15:43:36 +02:00
Max Kellermann 270a74e53b io/FileOutputStream: add method Sync() 2022-07-14 15:41:12 +02:00
Max Kellermann 47d103e8a1 io/FileOutputStream: add API documentation 2022-07-14 15:41:03 +02:00
Max Kellermann cddeb2a0df io/BufferedOutputStream: add missing #include 2022-07-13 14:11:36 +02:00
Max Kellermann 9a30286289 io/BufferedOutputStream: add libfmt support 2022-07-13 12:52:20 +02:00
Max Kellermann 0f4bf5569a event/InotifyEvent: new class wrapping inotify
Replaces class InotifySource.
2022-06-30 12:05:50 +02:00
Max Kellermann 60a3aae35f io/FileDescriptor: add OpenReadOnly() overload with directory fd 2022-06-30 10:30:54 +02:00
Max Kellermann bc3415ce8b Copyright year 2022 2022-06-30 09:41:53 +02:00
Max Kellermann 899eaa3307 io/FileDescriptor: add Duplicate() returning UniqueFileDescriptor 2022-06-29 17:31:37 +02:00
Max Kellermann bb7be9a4cd util/*FifoBuffer: migrate from WritableBuffer to std::span 2022-05-19 14:01:57 +02:00
Max Kellermann 570755f05a io/BufferedReader: migrate from WritableBuffer to std::span 2022-05-19 13:25:19 +02:00
Max Kellermann 7d67c87a47 io/FileReader: use std::size_t 2021-12-08 19:40:22 +01:00
Philipp Wollschlegel c072902f23 io/FileOutputStream: merge win32 function Cancel
Win32 had a separate implementation for FileOutputStream::CANCEL Logic
was added to the other platform function, but forgotten in this one.

This merges the functions into one, as only the call for file deletion
is platform specific.
2021-12-08 19:35:11 +01:00
Max Kellermann 80c177e9a0 io/BufferedOutputStream: add missing char* cast 2021-12-07 12:07:13 +01:00
Max Kellermann 4074db5f50 io/BufferedReader: use std::size_t 2021-12-07 11:54:11 +01:00
Max Kellermann 8c6bc02bf7 io/BufferedOutputStream: use std::byte 2021-12-07 11:47:45 +01:00
Max Kellermann a5fa43b526 fs/io: move to io/ 2021-12-03 14:35:41 +01:00
Max Kellermann 799032505e io/uring/Queue: add method RequireSubmitEntry()
Fixes assertion failure when the submit queue is empty.
2021-12-03 13:58:39 +01:00
Max Kellermann c8f174ac92 io/uring/Operation: disallow copying 2021-12-03 13:52:04 +01:00
Max Kellermann 25354b9d8c Merge branch 'v0.22.x' 2021-03-10 21:06:12 +01:00
Max Kellermann d61341c0e3 io/FileDescriptor: add method SetBinaryMode() 2021-03-08 17:25:36 +01:00
Max Kellermann 6cdb3ff21e use [[gnu::pure]] instead of gcc_pure
This is semi-standard and doesn't require the util/Compiler.h header.
2021-02-12 18:34:16 +01:00
Max Kellermann 08e76815ba io/FileDescriptor: use std::byte 2021-01-22 12:50:16 +01:00
Max Kellermann b8df851414 io/FileDescriptor: use std::size_t 2020-12-02 14:56:00 +01:00