I want to read both formatted text and binary data from the same iostream. How can I do that?
Why? Imagine this situation: You have different resources, and resource loaders for them, that take a std::istream as a parameter. And there are a "resource source" that provides these streams. Resources can be both text and binary and I need to handle both cases with resource loaders.
Or other situation: Image that you have an archive with resources of mixed types. How can I get a text stream from inside the binary archive stream?