ref: dd16eef8365cb0b9e4805c23291aadcaa596dd87
dir: /module/ida.m/
Ida: module
{
PATH: con "/dis/lib/ida/ida.dis";
Frag: adt {
dlen: int; # length of original data
m: int; # minimum pieces for reconstruction
a: array of int; # encoding array row for this fragment
enc: array of int; # encoded data
tag: array of byte; # user data, such as SHA1 hash
};
init: fn();
fragment: fn(data: array of byte, m: int): ref Frag;
consistent: fn(frags: array of ref Frag): array of ref Frag;
reconstruct: fn(frags: array of ref Frag): (array of byte, string);
};
Idatab: module
{
PATH: con "/dis/lib/ida/idatab.dis";
init: fn(): array of int;
};