41 register int i,len, elmt;
42 register unsigned char *
bp;
49 if (isarray(p)) p=p->c.ary.entity;
51 len=vecsize(p); elmt=elmtypeof(p);
55 case ELM_BIT: len=(len+7)/8;
break;
56 case ELM_FOREIGN: bp=(
unsigned char *)p->c.ivec.iv[0];
break;
57 case ELM_CHAR:
case ELM_BYTE:
break;
59 case ELM_FLOAT:
case ELM_INT: len<<=2;
break;}
65 {
int i=0, j,
argc=3, len, stat;
66 pointer con=argv[0], entry=argv[1], result=argv[2];
74 if (issymbol(entry)) entry= (
pointer)getstring(entry);
75 if (isstring(entry)) {
79 else if (isint(entry)) {
85 putarg(out, argv[argc++]);}
92 if (isarray(result)) result=result->c.ary.entity;
93 if (isvector(result)) {
96 if ((elmtypeof(result) == ELM_INT) || (elmtypeof(result) == ELM_FLOAT))
114 for (i=0; i<len; i++) result->c.str.chars[i]=
readch(in);
pointer prinx(context *, pointer, pointer)
static putlength(pointer s, unsigned int len)
static int putarg(pointer s, pointer p)
pointer cons(context *, pointer, pointer)
static unsigned long getlong(pointer con)
pointer vxwcom(context *ctx, int n, pointer argv[], pointer env)
defun("ADR_TO_STRING", mod, ADR_TO_STRING)
int writestr(pointer, byte *, int)
pointer CALL_VXW(context *ctx, int n, pointer argv[])
pointer error(enum errorcode ec,...) pointer error(va_alist) va_dcl
int writech(pointer, int)
static void putlong(pointer s, long i)