www.pudn.com > LexYaccProgs.zip > KWTBL.COD
(* KWTBL keyword table lookup procedure V1.0 6-7-91 AG *)
function kwlookup( kw : String; var code : Integer ) : Boolean;
(* checks whether kw is in the keyword table; if so, returns the
corresponding integer code *)
var m, n, k : integer;
begin
(* binary search: *)
m := 1; n := nkws;
while m<=n do
begin
k := m+(n-m) div 2;
if kw=kwtbl[k] then
begin
kwlookup := true;
code := kwcod[k];
exit
end
else if kw>kwtbl[k] then
m := k+1
else
n := k-1
end;
kwlookup := false
end(*kwlookup*);