This commit is contained in:
Oliver Lehmann 1989-01-24 17:09:33 +00:00
parent 1ff4faba3d
commit 82156416e4
1 changed files with 50 additions and 0 deletions

View File

@ -0,0 +1,50 @@
# include <stdio.h>
# include "gen.h"
# include "constants.h"
# include "globals.h"
/*
** GETKEY -- Get the optab entry for a keyword
**
** Performs a binary search through Kwrdtab
** for a given keyword.
**
** Parameters:
** key -- char * to the keywords character
** representation.
**
** Returns:
** a pointer to the optab struct node for that
** keyword, or 0 if not found.
*/
struct optab *getkey(key)
char *key;
{
register struct optab *op;
register int k;
register int top;
register int bot;
op = Kwrdtab;
bot = 0;
top = Kwrdnum - 1;
do
{
k = (top + bot) / 2;
switch (AAscompare(key, 0, op[k].op_term, 0))
{
case 1 :
bot = k + 1;
break;
case 0 :
return (&op[k]);
case -1 :
top = k - 1;
break;
}
} while (bot <= top);
return (0);
}