summaryrefslogtreecommitdiff
path: root/src/fs
AgeCommit message (Collapse)Author
2021-05-19Merge tag 'v0.22.7'Max Kellermann
release v0.22.7
2021-05-19meson.build: define NOUSER on Windows for lighter windows.hMax Kellermann
A few exceptions are needed for sources which include COM header (directly or indirectly). This fixes lots of shadow warnings, see https://github.com/MusicPlayerDaemon/MPD/issues/1150
2021-05-19fs/Glob: un-inline the Windows version to reduce header dependenciesMax Kellermann
2021-05-19fs/Glob: use defaulted move constructorMax Kellermann
2021-05-19fs/Glob: remove redundant #ifdefsMax Kellermann
2021-05-19win32, ...: avoid including windows.hMax Kellermann
Include the most specific header documented by MSDN instead.
2021-03-04util/AllocatedString: remove Null(), IsNull()Max Kellermann
2021-03-04util/AllocatedString: rename to BasicAllocatedStringMax Kellermann
To make things simpler, AllocatedString is now a non-template class.
2021-02-04fs/io/GunzipReader: document that the constructor throwsMax Kellermann
2021-01-21fs/io/StdioOutputStream: include cleanupMax Kellermann
2021-01-21fs/io/FileOutputStream: add `noexcept`Max Kellermann
2021-01-21util/AllocatedString: remove Null(), IsNull()Max Kellermann
2021-01-21util/AllocatedString: rename to BasicAllocatedStringMax Kellermann
To make things simpler, AllocatedString is now a non-template class.
2021-01-01copyright year 2021Max Kellermann
2020-10-28fs/Traits: add GetPathSuffix()Max Kellermann
2020-10-27fs/Traits: add GetFilenameSuffix()Max Kellermann
2020-05-30use std chr functionsRosen Penev
The ones in std have overloads for const char/char. Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-05-05system/FileDescriptor: move to io/Max Kellermann
2020-05-05fs/FileSystem: remove unused function FOpen()Max Kellermann
2020-04-23Merge tag 'v0.21.23'Max Kellermann
release v0.21.23
2020-04-23fs/NarrowPath: preserve nullptr in Path operatorMax Kellermann
Fixes Path::IsNull() checks on Windows.
2020-04-08fs/Charset: pass std::string_view to PathToUTF8()Max Kellermann
2020-04-03fs/Traits: add Relative() overload with std::string_viewMax Kellermann
2020-04-03fs/Traits: convert first Relative() parameter to std::string_viewMax Kellermann
2020-04-03fs/AllocatedPath: pass std::string_view to FromUTF8()Max Kellermann
2020-04-03fs/FileSystem, ...: use AllocatedPath::FromFS(string_view)Max Kellermann
2020-04-03fs/Charset: enable RVO in FixSeparators()Max Kellermann
2020-04-03util/AllocatedString: std::string_view supportMax Kellermann
2020-04-02Merge tag 'v0.21.22'Max Kellermann
release v0.21.22
2020-04-02fs/io/GzipOutputStream: increase buffer size to 16 kBMax Kellermann
Reduce I/O overhead.
2020-04-02fs/io/BufferedReader: larger default buffer (4 kB -> 16 kB)Max Kellermann
Reduce I/O overhead.
2020-04-02fs/NarrowPath: add class FromNarrowPathMax Kellermann
Move code from ParseCommandLine().
2020-04-02fs/NarrowPath: un-inline Windows constructorMax Kellermann
2020-03-31fs/io/GunzipReader: increase buffer size to 64 kBMax Kellermann
Reduces I/O overhead while reading a compressed database file.
2020-03-20remove false ifdefRosen Penev
The entire section falls under the else path of #ifdef _WIN32. Checking for it makes no sense. Probably some refactoring mistake. Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-19[clang-tidy] use default member initRosen Penev
Found with modernize-use-default-member-init Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-16remove gcc_unusedRosen Penev
[[maybe_unused]] (introduced in C++17) is standard C++. https://clang.llvm.org/docs/AttributeReference.html#maybe-unused-unused says that this is equivalent to the GNU unused attribute. Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-13fs/Traits: GetParent() returns std::string_viewMax Kellermann
2020-03-13fs/Traits: pass string_view to Build()Max Kellermann
2020-03-13fs/Path: make constructor `explicit`Max Kellermann
2020-03-13fs/AllocatedPath: add `string_view` constructorMax Kellermann
2020-03-13fs/Traits: add string_viewMax Kellermann
2020-03-13fs/Traits: use {} notation for return valuesMax Kellermann
2020-03-13fs/Traits: use `auto`Max Kellermann
2020-03-13fs: use `using` instead of `typedef`Max Kellermann
2020-03-12replace stdint.h with cstdintRosen Penev
The former is deprecated by C++14. The standard says they are the same: The header defines all types and macros the same as the C standard library header<stdint.h>. Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-12replace stddef.h with cstddefRosen Penev
The former is deprecated with C++14. The standard says both are the same: The contents and meaning of the header<cstddef>are the same as the C standard library header<stddef.h>,except that it does not declare the type wchar_t, that it also declares the type byte and its associated operations (21.2.5), and as noted in 21.2.3 and 21.2.4. Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-12replace stdarg.h with cstdargRosen Penev
The former was deprecated in C++14. The Standard says they are the same: The contents of the header<cstdarg>are the same as the C standard library header<stdarg.h>, with the following changes: The restrictions that ISO C places on the second parameter to the va_start macro in header<stdarg.h> are different in this International Standard. The parameter parmN is the rightmost parameter in the variable parameter list of the function definition (the one just before the...).219If the parameter parmN is a pack expansion (17.5.3) or an entity resulting from a lambda capture (8.1.5), the program is ill-formed, no diagnostic required. If the parameter parmN is of a reference type, or of a type that is not compatible with the type that results when passing an argument for which there is no parameter, the behavior is undefined. Also changed va_list to the std:: namespace version, which is the same. Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-12replace limits.h with climitsRosen Penev
The former was deprecated with C++14. The standard says they are the same with one exception: The header<climits>defines all macros the same as the C standard library header<limits.h>. [Note:The types of the constants defined by macros in<climits>are not required to match the types to which themacros refer.— end note] Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-12change errno.h to cerrnoRosen Penev
The former is deprecated by C++14. It's also functionally the same. From the standard: 19.4 The header<cerrno>is described in Table 43. Its contents are the same as the POSIX header<errno.h>,except that errno shall be defined as a macro. [Note: The intent is to remain in close alignment with the POSIX standard.] A separate errno value shall be provided for each thread. Signed-off-by: Rosen Penev <rosenp@gmail.com>