I currently try to implement an fs for which I require positional reads/writes.

For testing purposes I would like to have the implementation only take *std.Io.Reader and *std.Io.Writer instead of an *std.Io.File, but I noticed that the interfaces don’t expose positional reads/writes, not even seeking.

Is this something which just isn’t implemented yet or is the intention to use a *std.Io.File directly?

Readers and Writers exist to abstract over streams of bytes. As many of those have no concept of positional reading and writing it likely wouldn’t make sense to add those operations. You can’t write to the 7th byte of a TCP socket, for example. I’d imagine that you should just use File if you need those features

Yeah, for this kind of testing you need a VFS, not a streaming reader/writer. Could probably use the Marionette project as an alternative for testing, but it’s probably huge overkill.