typedef struct File <> { Path *path; int mode; /* rw .. */ Data *fileImpl ; __code open(FileImpl* file,Key *key, __code next(Block *block,...)); __code ack(FileImpl* file,Ack *ack, __code next(Block *block,...)); } File;