/* Copyright (C) 1992 by Thomas Glen Smith. All Rights Reserved. */
/* aplpnam APL2 V1.0.0 *************************************************
* Called from aplparsf when the current character is alphabetic to *
* parse a name. *
***********************************************************************/
#define INCLUDES APLMEM+APLTOKEN
#include "includes.h"
void aplpnam(cur,s,sp,spend)
Apltoken cur;
char *s; /* Pointer to start of name. */
char *sp[]; /* Pointer to pointer to string being parsed. */
char *spend; /* Pointer to after end of string being parsed. */
{
Aplnamsb;
char *u,*v;
int i,j;
u = sp[0] = aplnamsb(sp[0],spend); /* find end of name */
j = (u-s); /* j = length(name) */
v = malloc(j+1); /* place to store name */
if (v == NULL) {
cur->token_code = MESSAGE_TOKEN;
cur->token_ptr.token_string = "out of memory";
return;
}
cur->token_ptr.token_string = v; /* store in token element */
while (j--)
*v++ = *s++; /* copy operand name to token string */
*v = '\0'; /* mark end of operand name */
}