Metropoli BBS
VIEWER: takefill.c MODE: TEXT (ASCII)
/* Copyright (C) 1993 by Thomas Glen Smith.  All Rights Reserved. */
/* takefill APL2 V1.0.0 ************************************************
* Called by takeit when a fill value is needed during the take.        *
***********************************************************************/
#define INCLUDES APLCB
#include "includes.h"
#include "takeincl.h"
char *takefill(p)
struct takeparm *p;
{
     Apltype; First; Perm;
     char *ret;

     switch (p->ptype) {
		case APLCPLX:
          case APLNUMB:
          case APLINT :
          case APLCHAR:
               ret = (char *) (p->fillptr.aplchar);
               break;
          case APLAPL:
               if (NULL == (ret = (char *) (p->fillptr.aplapl))) {
                    p->aplfill = perm(apltype(p->prite)); /* get type */
                    ret = (void *) /* prototype is first item in type */
                         (p->fillptr.aplapl = p->aplfill->aplptr.aplapl);
               }
               break;
     } /* end switch */
     return(ret);
}
[ RETURN TO DIRECTORY ]