1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 21:47:45 +00:00

AK: Move Stream and SeekableStream from LibCore

`Stream` will be qualified as `AK::Stream` until we remove the
`Core::Stream` namespace. `IODevice` now reuses the `SeekMode` that is
defined by `SeekableStream`, since defining its own would require us to
qualify it with `AK::SeekMode` everywhere.
This commit is contained in:
Tim Schumacher 2023-01-22 05:09:11 +01:00 committed by Andrew Kaster
parent 5f2ea31816
commit 8464da1439
96 changed files with 620 additions and 586 deletions

View file

@ -51,7 +51,7 @@ ErrorOr<size_t> TarFileStream::write(ReadonlyBytes)
return Error::from_errno(EBADF);
}
ErrorOr<NonnullOwnPtr<TarInputStream>> TarInputStream::construct(NonnullOwnPtr<Core::Stream::Stream> stream)
ErrorOr<NonnullOwnPtr<TarInputStream>> TarInputStream::construct(NonnullOwnPtr<AK::Stream> stream)
{
auto tar_stream = TRY(adopt_nonnull_own_or_enomem(new (nothrow) TarInputStream(move(stream))));
@ -60,7 +60,7 @@ ErrorOr<NonnullOwnPtr<TarInputStream>> TarInputStream::construct(NonnullOwnPtr<C
return tar_stream;
}
TarInputStream::TarInputStream(NonnullOwnPtr<Core::Stream::Stream> stream)
TarInputStream::TarInputStream(NonnullOwnPtr<AK::Stream> stream)
: m_stream(move(stream))
{
}
@ -136,7 +136,7 @@ TarFileStream TarInputStream::file_contents()
return TarFileStream(*this);
}
TarOutputStream::TarOutputStream(MaybeOwned<Core::Stream::Stream> stream)
TarOutputStream::TarOutputStream(MaybeOwned<AK::Stream> stream)
: m_stream(move(stream))
{
}

View file

@ -16,7 +16,7 @@ namespace Archive {
class TarInputStream;
class TarFileStream : public Core::Stream::Stream {
class TarFileStream : public AK::Stream {
public:
virtual ErrorOr<Bytes> read(Bytes) override;
virtual ErrorOr<size_t> write(ReadonlyBytes) override;
@ -34,7 +34,7 @@ private:
class TarInputStream {
public:
static ErrorOr<NonnullOwnPtr<TarInputStream>> construct(NonnullOwnPtr<Core::Stream::Stream>);
static ErrorOr<NonnullOwnPtr<TarInputStream>> construct(NonnullOwnPtr<AK::Stream>);
ErrorOr<void> advance();
bool finished() const { return m_found_end_of_archive || m_stream->is_eof(); }
ErrorOr<bool> valid() const;
@ -45,11 +45,11 @@ public:
ErrorOr<void> for_each_extended_header(F func);
private:
TarInputStream(NonnullOwnPtr<Core::Stream::Stream>);
TarInputStream(NonnullOwnPtr<AK::Stream>);
ErrorOr<void> load_next_header();
TarFileHeader m_header;
NonnullOwnPtr<Core::Stream::Stream> m_stream;
NonnullOwnPtr<AK::Stream> m_stream;
unsigned long m_file_offset { 0 };
int m_generation { 0 };
bool m_found_end_of_archive { false };
@ -59,14 +59,14 @@ private:
class TarOutputStream {
public:
TarOutputStream(MaybeOwned<Core::Stream::Stream>);
TarOutputStream(MaybeOwned<AK::Stream>);
ErrorOr<void> add_file(StringView path, mode_t, ReadonlyBytes);
ErrorOr<void> add_link(StringView path, mode_t, StringView);
ErrorOr<void> add_directory(StringView path, mode_t);
ErrorOr<void> finish();
private:
MaybeOwned<Core::Stream::Stream> m_stream;
MaybeOwned<AK::Stream> m_stream;
bool m_finished { false };
friend class TarFileStream;

View file

@ -100,7 +100,7 @@ ErrorOr<bool> Zip::for_each_member(Function<IterationDecision(ZipMember const&)>
return true;
}
ZipOutputStream::ZipOutputStream(NonnullOwnPtr<Core::Stream::Stream> stream)
ZipOutputStream::ZipOutputStream(NonnullOwnPtr<AK::Stream> stream)
: m_stream(move(stream))
{
}

View file

@ -55,7 +55,7 @@ struct [[gnu::packed]] EndOfCentralDirectory {
return true;
}
ErrorOr<void> write(Core::Stream::Stream& stream) const
ErrorOr<void> write(AK::Stream& stream) const
{
auto write_value = [&stream](auto value) {
return stream.write_entire_buffer({ &value, sizeof(value) });
@ -141,7 +141,7 @@ struct [[gnu::packed]] CentralDirectoryRecord {
return true;
}
ErrorOr<void> write(Core::Stream::Stream& stream) const
ErrorOr<void> write(AK::Stream& stream) const
{
auto write_value = [&stream](auto value) {
return stream.write_entire_buffer({ &value, sizeof(value) });
@ -210,7 +210,7 @@ struct [[gnu::packed]] LocalFileHeader {
return true;
}
ErrorOr<void> write(Core::Stream::Stream& stream) const
ErrorOr<void> write(AK::Stream& stream) const
{
auto write_value = [&stream](auto value) {
return stream.write_entire_buffer({ &value, sizeof(value) });
@ -267,13 +267,13 @@ private:
class ZipOutputStream {
public:
ZipOutputStream(NonnullOwnPtr<Core::Stream::Stream>);
ZipOutputStream(NonnullOwnPtr<AK::Stream>);
ErrorOr<void> add_member(ZipMember const&);
ErrorOr<void> finish();
private:
NonnullOwnPtr<Core::Stream::Stream> m_stream;
NonnullOwnPtr<AK::Stream> m_stream;
Vector<ZipMember> m_members;
bool m_finished { false };