File:  [CSRG BSD Unix] / 43BSD / contrib / icon / functions / pos.c
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:12:55 2018 UTC (8 years, 1 month ago) by root
Branches: MAIN, BSD
CVS tags: HEAD, BSD43
BSD 4.3

#include "../h/rt.h"

/*
 * pos(i) - test if &pos is at position i in &subject.
 */
Xpos(nargs, arg1, arg0)
int nargs;
struct descrip arg1, arg0;
   {
   register int i;
   long l;

   /*
    * i must be an integer.
    */
   if (cvint(&arg1, &l) == NULL)
      runerr(101, &arg1);

   /*
    * Fail if &pos isn't equivalent to i, return i otherwise.
    */
   if ((i = cvpos(l, STRLEN(k_subject))) != k_pos)
      fail();
   arg0.type = D_INTEGER;
   INTVAL(arg0) = i;
   }

Procblock(pos,1)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.