/* Copyright (C) 1993, 1997 by Thomas Glen Smith. All Rights Reserved. */ /* execdyar APL2 V1.0.1 ************************************************ * Called from execdyas to check for a dyadic routine of type * * (*oper)(Aplcb, Aplcb, int). * ***********************************************************************/ #define INCLUDES APLCB+APLDERIV+FUNSTRUC+FUNCODES #include "includes.h" sub_dyad execdyar(fun) void *fun; { Mixed_dyadics *mdp; sub_dyad ret; switch (((Codes *)fun)->funky_flags) { case MIXF: /* circle-bar, rotate, default = first axis */ case MIXL: /* circle-stile, reverse, default = last axis */ case MIXA: /* enclose, disclose */ case MIXC: /* catenate, laminate */ mdp = &(((Mixa *)fun)->dyad); ret = mdp->epdixa; /* mixed w/axis */ break; default: ret=NULL; /* no match */ break; } return(ret); }