12345678910111213141516171819202122232425262728293031323334 |
- Xfidm : module {
- PATH : con "/dis/acme/xfid.dis";
- Xnil, Xflush, Xwalk, Xopen, Xclose, Xread, Xwrite : con iota;
- init : fn(mods : ref Dat->Mods);
- newxfid : fn() : ref Xfid;
- xfidkill : fn();
- Xfid : adt {
- tid : int;
- fcall : ref Styx->Tmsg;
- next : cyclic ref Xfid;
- c : chan of int;
- f : cyclic ref Dat->Fid;
- buf : array of byte;
- flushed : int;
- ctl : fn(x : self ref Xfid);
- flush: fn(x : self ref Xfid);
- walk: fn(x : self ref Xfid, c: chan of ref Windowm->Window);
- open: fn(x : self ref Xfid);
- close: fn(x : self ref Xfid);
- read: fn(x : self ref Xfid);
- write: fn(x : self ref Xfid);
- ctlwrite: fn(x : self ref Xfid, w : ref Windowm->Window);
- eventread: fn(x : self ref Xfid, w : ref Windowm->Window);
- eventwrite: fn(x : self ref Xfid, w : ref Windowm->Window);
- indexread: fn(x : self ref Xfid);
- utfread: fn(x : self ref Xfid, t : ref Textm->Text, m : int, n : int, qid : int);
- runeread: fn(x : self ref Xfid, t : ref Textm->Text, m : int, n : int) : int;
- };
- };
|