Lines Matching refs:pos
352 int ppos, /* original pos in buffer */ \
353 int pos, /* current pos in buffer */ \
907 roff_res(struct roff *r, struct buf *buf, int ln, int pos)
926 start = buf->buf + pos;
1094 start = nbuf + pos;
1108 roff_parsetext(struct buf *buf, int pos, int *offs)
1116 start = p = buf->buf + pos;
1163 int pos; /* parse point */
1168 ppos = pos = *offs;
1175 e = roff_eqndelim(r, buf, pos);
1183 e = roff_res(r, buf, ln, pos);
1188 ctl = roff_getcontrol(r, buf->buf, &pos);
1201 e = (*roffs[t].text)(r, t, buf, ln, pos, pos, offs);
1208 if (r->tbl != NULL && ( ! ctl || buf->buf[pos] == '\0'))
1211 return(roff_parsetext(buf, pos, offs));
1215 if (buf->buf[pos] == '"') {
1217 ln, pos, NULL);
1219 } else if (buf->buf[pos] == '\0')
1231 return((*roffs[t].sub)(r, t, buf, ln, ppos, pos, offs));
1236 spos = pos;
1237 t = roff_parse(r, buf->buf, &pos, ln, ppos);
1243 ln, pos, buf->buf + spos);
1246 while (buf->buf[pos] != '\0' && buf->buf[pos] != ' ')
1247 pos++;
1248 while (buf->buf[pos] != '\0' && buf->buf[pos] == ' ')
1249 pos++;
1250 return(tbl_read(r->tbl, ln, buf->buf, pos));
1264 return((*roffs[t].proc)(r, t, buf, ln, ppos, pos, offs));
1278 r->eqn->eqn.ln, r->eqn->eqn.pos, "EQ");
1284 r->tbl->line, r->tbl->pos, "TS");
1294 roff_parse(struct roff *r, char *buf, int *pos, int ln, int ppos)
1301 cp = buf + *pos;
1313 *pos = cp - buf;
1352 if (buf->buf[pos] != '\0')
1353 mandoc_vmsg(MANDOCERR_ARG_SKIP, r->parse, ln, pos,
1354 ".. %s", buf->buf + pos);
1427 cp = buf->buf + pos;
1493 ln, pos, ".%s ... %s", roffs[tok].name, cp);
1514 for (i = pos, j = 0; r->last->end[j]; j++, i++)
1528 pos = i;
1529 if (roff_parse(r, buf->buf, &pos, ln, ppos) !=
1541 t = roff_parse(r, buf->buf, &pos, ln, ppos);
1550 return((*roffs[t].proc)(r, t, buf, ln, ppos, pos, offs));
1558 roff_setstr(r, r->last->name, buf->buf + pos, 2);
1572 t = roff_parse(r, buf->buf, &pos, ln, ppos);
1582 return((*roffs[t].proc)(r, t, buf, ln, ppos, pos, offs));
1590 ep = buf->buf + pos;
1616 ep = buf->buf + pos;
1635 roff_getnum(const char *v, int *pos, int *res, int flags)
1642 p = *pos;
1653 if (p == *pos + n)
1698 *pos = p + 1;
1711 roff_evalstrcond(const char *v, int *pos)
1717 s1 = v + *pos; /* initial delimiter */
1741 *pos = s3 - v;
1750 roff_evalcond(struct roff *r, int ln, const char *v, int *pos)
1754 if ('!' == v[*pos]) {
1756 (*pos)++;
1760 switch (v[*pos]) {
1766 (*pos)++;
1779 (*pos)++;
1785 savepos = *pos;
1786 if (roff_evalnum(r, ln, v, pos, &number, ROFFNUM_SCALE))
1788 else if (*pos == savepos)
1789 return(roff_evalstrcond(v, pos) == wanttrue);
1835 roff_evalcond(r, ln, buf->buf, &pos);
1862 if (buf->buf[pos] == '\0') {
1867 while (buf->buf[pos] == ' ')
1868 pos++;
1872 if (buf->buf[pos] == '\\' && buf->buf[pos + 1] == '{') {
1874 pos += 2;
1884 if (buf->buf[pos] == '\0')
1891 *offs = pos;
1915 name = string = buf->buf + pos;
1919 namesz = roff_getname(r, &string, ln, pos);
1939 roff_getop(const char *v, int *pos, char *res)
1942 *res = v[*pos];
1960 switch (v[*pos + 1]) {
1963 (*pos)++;
1967 (*pos)++;
1971 (*pos)++;
1978 switch (v[*pos + 1]) {
1981 (*pos)++;
1985 (*pos)++;
1992 if ('=' == v[*pos + 1])
1993 (*pos)++;
1998 (*pos)++;
2009 const char *v, int *pos, int *res, int flags)
2012 if ('(' != v[*pos])
2013 return(roff_getnum(v, pos, res, flags));
2015 (*pos)++;
2016 if ( ! roff_evalnum(r, ln, v, pos, res, flags | ROFFNUM_WHITE))
2025 if (')' == v[*pos])
2026 (*pos)++;
2039 int *pos, int *res, int flags)
2044 if (NULL == pos) {
2046 pos = &mypos;
2050 while (isspace((unsigned char)v[*pos]))
2051 (*pos)++;
2053 if ( ! roff_evalpar(r, ln, v, pos, res, flags))
2058 while (isspace((unsigned char)v[*pos]))
2059 (*pos)++;
2061 if ( ! roff_getop(v, pos, &operator))
2065 while (isspace((unsigned char)v[*pos]))
2066 (*pos)++;
2068 if ( ! roff_evalpar(r, ln, v, pos, &operand2, flags))
2072 while (isspace((unsigned char)v[*pos]))
2073 (*pos)++;
2091 r->parse, ln, *pos, v);
2100 r->parse, ln, *pos, v);
2262 key = val = buf->buf + pos;
2266 keysz = roff_getname(r, &val, ln, pos);
2288 name = cp = buf->buf + pos;
2291 namesz = roff_getname(r, &cp, ln, pos);
2316 cp = buf->buf + pos;
2334 if ( ! roff_evalnum(r, ln, buf->buf, &pos, &iv, 0)) {
2340 while (isspace((unsigned char)buf->buf[pos]))
2341 pos++;
2351 strcmp(buf->buf + pos, "an-trap") ?
2352 buf->buf + pos : "br");
2419 roff_eqndelim(struct roff *r, struct buf *buf, int pos)
2431 cp1 = buf->buf + pos;
2499 if (buf->buf[pos] != '\0')
2500 mandoc_vmsg(MANDOCERR_ARG_SKIP, r->parse, ln, pos,
2501 ".EQ %s", buf->buf + pos);
2540 buf->buf[pos - 1] = '\0';
2549 p = buf->buf + pos;
2568 p = buf->buf + pos;
2628 name = buf->buf + pos;
2649 *offs = pos;
2666 cp = buf->buf + pos;
2669 mandoc_getarg(r->parse, &cp, ln, &pos);
2764 roff_getname(struct roff *r, char **cpp, int ln, int pos)
2787 mandoc_vmsg(MANDOCERR_NAMESC, r->parse, ln, pos,
3047 int pos;
3049 pos = *ppos;
3051 if (0 != r->control && cp[pos] == r->control)
3052 pos++;
3055 else if ('\\' == cp[pos] && '.' == cp[pos + 1])
3056 pos += 2;
3057 else if ('.' == cp[pos] || '\'' == cp[pos])
3058 pos++;
3062 while (' ' == cp[pos] || '\t' == cp[pos])
3063 pos++;
3065 *ppos = pos;