Metropoli BBS
VIEWER: execqnc.c MODE: TEXT (ASCII)
/*Copyright (C) 1992, 1995 by Thomas Glen Smith.  All Rights Reserved.*/
/* execqnc APL2 V1.0.0 *************************************************
* Called from execmonq.  System function quad_nc, name classification. *
***********************************************************************/
#define INCLUDES APLCB+TREE
#include "includes.h"
Aplcb execqnc(rite)
Aplcb rite;
{
	Execqncs;
	int execqnct();

	return(execqncs(execqnct,rite));
}

int execqnct(nameok,p)
int nameok; /* nonzero if current name is well formed */
struct avlnode *p; /* node for current name */
{
	int k;
	Aplcb wrk;

	if (!nameok)
		k = 4; /* invalid name */
	else {
		k = 0; /* default = name available for use */
		if (NULL != p && NULL != (wrk = p->avlleaf))
			if (wrk->aplflags & APLLABEL) k = 1; /* label */
			else if (wrk->aplflags & APLFUNC) k = 3; /* function */
			else k = 2; /* must be variable */
	}
	return(k);
}
[ RETURN TO DIRECTORY ]