ref: babf901b4a508c3ec5d1f89655f10377bbdf9637
dir: /module/sets32.m/
Sets: module {
A: con 2r1010;
B: con 2r1100;
PATH: con "/dis/lib/sets32.dis";
init: fn();
set: fn(): Set;
str2set: fn(str: string): Set;
bytes2set: fn(d: array of byte): Set;
Set: adt {
s: int;
X: fn(s1: self Set, o: int, s2: Set): Set;
add: fn(s: self Set, n: int): Set;
addlist: fn(s: self Set, ns: list of int): Set;
# dellist: fn(s: self Set, ns: list of int): Set;
del: fn(s: self Set, n: int): Set;
invert: fn(s: self Set): Set;
eq: fn(s1: self Set, s2: Set): int;
holds: fn(s: self Set, n: int): int;
isempty: fn(s: self Set): int;
msb: fn(s: self Set): int;
limit: fn(s: self Set): int;
str: fn(s: self Set): string;
bytes: fn(s: self Set, lim: int): array of byte;
debugstr: fn(s: self Set): string;
};
All: con Set(~0);
None: con Set(0);
};