|
|
1.1 ! root 1: #include "../h/rt.h" ! 2: ! 3: /* ! 4: * string(x) - convert x to string. ! 5: */ ! 6: ! 7: Xstring(nargs, arg1, arg0) ! 8: int nargs; ! 9: struct descrip arg1, arg0; ! 10: { ! 11: char sbuf[MAXSTRING]; ! 12: extern char *alcstr(); ! 13: ! 14: arg0 = arg1; ! 15: switch (cvstr(&arg0, sbuf)) { ! 16: /* ! 17: * If x isn't a string, allocate it and return it; if it is a ! 18: * string, just return it; fail if it isn't a string and can't ! 19: * be converted. ! 20: */ ! 21: case 1: ! 22: sneed(STRLEN(arg0)); ! 23: STRLOC(arg0) = alcstr(STRLOC(arg0), STRLEN(arg0)); ! 24: case 2: ! 25: return; ! 26: default: ! 27: fail(); ! 28: } ! 29: } ! 30: ! 31: Procblock(string,1)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.