Metropoli BBS
VIEWER: execdyaq.c MODE: TEXT (ASCII)
/* Copyright (C) 1993, 1997 by Thomas Glen Smith.  All Rights Reserved. */
/* execdyaq APL2 V1.0.1 ************************************************
* Called from execdyas to check for a dyadic routine of type           *
* (*oper)(Aplcb, Aplcb).                                               *
***********************************************************************/
#define INCLUDES APLCB+APLDERIV+FUNSTRUC+FUNCODES
#include "includes.h"
sub_dyad execdyaq(fun)
void *fun;
{
     Mixed_dyadics *mdp;

     switch (((Codes *)fun)->funky_flags) {
          case MSMD: /* dyadic mixed deal, without */
               mdp = &(((Msmd *)fun)->dyad);
               break;
          case MIXD: /* reshape, index of,... */
               mdp = &(((Mixa *)fun)->dyad);
               break;
          case DYDB: /* decode, encode */
          case SAME: /* transpose, gradedn, gradeup */
          case DYAE: /* drop */
               mdp = &(((Dmxo *)fun)->dyad);
               break;
          default:
               return(NULL); /* no match */
     }
     return(mdp->epdix); /* mixed w/o axis */
}
[ RETURN TO DIRECTORY ]