Metropoli BBS
VIEWER: execjot.c MODE: TEXT (ASCII)
/* Copyright (C) 1993 by Thomas Glen Smith.  All Rights Reserved. */
/* execjot APL2 V1.0.0 *************************************************
* Called by dottran. Derived function routine to handle outer product. *
***********************************************************************/
#define INCLUDES APLCHDEF+FUNSTRUC+APLDERIV+APLCB
#include "includes.h"
Aplcb execjot(dp,left,rite)
Aplderiv dp; /* function describing derived function */
Aplcb left,rite; /* arguments */
{
     Errstop; Execfree; Execjota; Execjotc; Execjotd; Pop;
     extern int aplerr;
     void *rfun;
     Aplcb out=NULL;
     int ltype,rtype;

     ltype = left->aplflags & APLMASK;
     rtype = rite->aplflags & APLMASK;
     if ((ltype | rtype) & APLCHAR)
          out = execjotd(left,rite,ltype,rtype,dp->deriv_rite.fun);
     else if (ltype == rtype)
          out = execjota(left,rite,ltype,      dp->deriv_rite.sdp);
     else out = execjotc(left,rite,ltype,rtype,dp->deriv_rite.sdp);
     if (aplerr == 0 && out == NULL)
          return(errstop(78,left,rite,out));
     return(out);
}
[ RETURN TO DIRECTORY ]