Metropoli BBS
VIEWER: execmons.c MODE: TEXT (ASCII)
/* Copyright (C) 1993 by Thomas Glen Smith.	All Rights Reserved. */
/* execmons APL2 V1.0.0 ************************************************
* Called from execmonh, eachmona, to determine monadic function type.  *
***********************************************************************/
#define INCLUDES APLDERIV+FUNSTRUC
#include "includes.h"
int execmons(code,fun,arg,pep)
int code; /* function code */
void *fun; /* function description */
void **arg; /* possible function argument */
sub_dyad *pep; /* derived function entry point */
{
	Derived; Execmoni; Execmonq; Funcmain;
	extern int aplerr;
	int ret;
     

	if (code >= DEFINED_FUNCTION) {
		pep->flr = funcmain;
          ret = FLR;
     }
	else if (code == DERIVED_FUNCTION) {
		pep->flr = derived;
          ret = FLR;
     }
	else if (code == FUNCTION_TOKEN)
     	ret = execmoni(fun,arg,pep);
     else if (code < QUAD_AI)
     	ret = execmonq(code, pep); /* system function? */
     else {
     	aplerr = 73; /* unknown monadic */
          ret = NO_TYPE;
     }
	return(ret);
}
[ RETURN TO DIRECTORY ]