fs/io/TextFile: split into class FileLineReader and AutoGunzipFileLineReader

Detangle dependencies.
This commit is contained in:
Max Kellermann
2023-11-25 22:39:48 +01:00
parent d888bb1902
commit 08a5768764
14 changed files with 57 additions and 43 deletions

23
src/io/FileLineReader.hxx Normal file
View File

@@ -0,0 +1,23 @@
// SPDX-License-Identifier: GPL-2.0-or-later
// Copyright The Music Player Daemon Project
#pragma once
#include "LineReader.hxx"
#include "FileReader.hxx"
#include "BufferedReader.hxx"
class FileLineReader final : public LineReader {
FileReader file_reader;
BufferedReader buffered_reader;
public:
explicit FileLineReader(Path path_fs)
:file_reader(path_fs),
buffered_reader(file_reader) {}
/* virtual methods from class LineReader */
char *ReadLine() override {
return buffered_reader.ReadLine();
}
};