mirror of
https://github.com/RGBCube/serenity
synced 2025-07-26 07:47:37 +00:00
AK: Add stream operators for Optional.
This commit is contained in:
parent
e3bfe0b509
commit
18b3de7555
1 changed files with 10 additions and 0 deletions
10
AK/Stream.h
10
AK/Stream.h
|
@ -31,6 +31,7 @@
|
||||||
#include <AK/Endian.h>
|
#include <AK/Endian.h>
|
||||||
#include <AK/Forward.h>
|
#include <AK/Forward.h>
|
||||||
#include <AK/MemMem.h>
|
#include <AK/MemMem.h>
|
||||||
|
#include <AK/Optional.h>
|
||||||
#include <AK/Span.h>
|
#include <AK/Span.h>
|
||||||
#include <AK/StdLibExtras.h>
|
#include <AK/StdLibExtras.h>
|
||||||
#include <AK/Vector.h>
|
#include <AK/Vector.h>
|
||||||
|
@ -104,6 +105,15 @@ InputStream& operator<<(InputStream& stream, BigEndian<T> value)
|
||||||
return stream;
|
return stream;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template<typename T>
|
||||||
|
InputStream& operator>>(InputStream& stream, Optional<T>& value)
|
||||||
|
{
|
||||||
|
T temporary;
|
||||||
|
stream >> temporary;
|
||||||
|
value = temporary;
|
||||||
|
return stream;
|
||||||
|
}
|
||||||
|
|
||||||
#if defined(__cpp_concepts) && !defined(__COVERITY__)
|
#if defined(__cpp_concepts) && !defined(__COVERITY__)
|
||||||
template<Concepts::Integral Integral>
|
template<Concepts::Integral Integral>
|
||||||
#else
|
#else
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue