/* Copyright (C) 1993 by Thomas Glen Smith. All Rights Reserved. */ /* reducef APL2 V1.0.0 ************************************************* * Called by execdotf and slashtrc. Derived function routine to handle * * reduce. Slashtrc sets dp->deriv_func to reducef. * ***********************************************************************/ #define INCLUDES APLCHDEF+FUNSTRUC+APLDERIV+APLCB+FUNCODES #include "includes.h" Aplcb reducef(dp,left,rite) Aplderiv dp; /* function describing derived function */ Aplcb left,rite; /* arguments */ { Axisdft; Creduce; Errstop; Nreduce; Nwise; Redscan; extern int indxorg; int axis; axis = dp->deriv_axis_int; if (axis == -1) /* take default? */ if (NULL != dp->deriv_op) axis = axisdft((Codes *)(dp->deriv_op),rite); else axis = indxorg; /* Must be execdotf calling. */ if (left) return(nwise(dp,left,rite,axis)); return(redscan(1,dp,rite,axis,creduce,nreduce)); }