Make sure lifetime of helper structs is less than owning struct

WebFreak001 at
Mon Nov 15 15:56:57 UTC 2021

I have an API with some struct like a file reader. I want to add 
byChunks-like functionality to it, so I'm trying to implement it 
with a helper struct that implements opApply. I have disabled 
copying the file reader struct because it cleans up the resources 
once it goes out of scope, however now I need to temporarily save 
the resources in the helper struct to be able to read from it.

How can I make sure that the foreach helper struct (and with that 
the copies of the resources) cannot be used once the owning 
struct goes out of scope?

ByChunk helper;
     auto file = FileReader(x);
     helper = file.byChunk;
helper.popFront; // crash - I want the compiler to disallow this

is this currently possible or maybe possible with DIP1000?

More information about the Digitalmars-d-learn mailing list