Template validateStream
Verifies that the given type is a valid bidirectional stream.
template validateStream(T)
;
A valid stream type must implement all methods of the Stream
interface. Inheriting
form Stream
is not strictly necessary, which also enables struct types to be considered
as stream implementations.