/***
Copyright (C) 2021 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: IStreamReader.hpp
Date: 2021-6-10
Author: Reece
***/
#pragma once
namespace Aurora::IO
{
AUKN_INTERFACE(IStreamReader,
AUI_METHOD(EStreamError, IsOpen, ()),
AUI_METHOD(EStreamError, Read, (const Memory::MemoryViewStreamWrite&, paramters)),
AUI_METHOD(void, Close, ())
);
inline EStreamError ReadAll(IStreamReader* that, Memory::ByteBuffer& buffer, AuOptional<bool> bBreakOnFirstMismatchLength = true);
}
#include "IStreamReader.inl" // ReadAll utility