ref: babf901b4a508c3ec5d1f89655f10377bbdf9637
dir: /appl/lib/strinttab.b/
implement StringIntTab;
include "strinttab.m";
lookup(t: array of StringInt, key: string) : (int, int)
{
min := 0;
max := len t-1;
while(min <= max){
try := (min+max)/2;
if(t[try].key < key)
min = try+1;
else if(t[try].key > key)
max = try-1;
else
return (1, t[try].val);
}
return (0, 0);
}
revlookup(t: array of StringInt, val: int) : string
{
n := len t;
for(i:=0; i < n; i++)
if(t[i].val == val)
return t[i].key;
return nil;
}