version 1.42, 2010/05/07 15:49:36 |
version 1.43, 2010/05/08 07:30:19 |
|
|
argv_multi(struct mdoc *m, int line, |
argv_multi(struct mdoc *m, int line, |
struct mdoc_argv *v, int *pos, char *buf) |
struct mdoc_argv *v, int *pos, char *buf) |
{ |
{ |
int c; |
enum margserr ac; |
char *p; |
char *p; |
|
|
for (v->sz = 0; ; v->sz++) { |
for (v->sz = 0; ; v->sz++) { |
if ('-' == buf[*pos]) |
if ('-' == buf[*pos]) |
break; |
break; |
c = args(m, line, pos, buf, 0, &p); |
ac = args(m, line, pos, buf, 0, &p); |
if (ARGS_ERROR == c) |
if (ARGS_ERROR == ac) |
return(0); |
return(0); |
else if (ARGS_EOLN == c) |
else if (ARGS_EOLN == ac) |
break; |
break; |
|
|
if (0 == v->sz % MULTI_STEP) |
if (0 == v->sz % MULTI_STEP) |
|
|
argv_opt_single(struct mdoc *m, int line, |
argv_opt_single(struct mdoc *m, int line, |
struct mdoc_argv *v, int *pos, char *buf) |
struct mdoc_argv *v, int *pos, char *buf) |
{ |
{ |
int c; |
enum margserr ac; |
char *p; |
char *p; |
|
|
if ('-' == buf[*pos]) |
if ('-' == buf[*pos]) |
return(1); |
return(1); |
|
|
c = args(m, line, pos, buf, 0, &p); |
ac = args(m, line, pos, buf, 0, &p); |
if (ARGS_ERROR == c) |
if (ARGS_ERROR == ac) |
return(0); |
return(0); |
if (ARGS_EOLN == c) |
if (ARGS_EOLN == ac) |
return(1); |
return(1); |
|
|
v->sz = 1; |
v->sz = 1; |
|
|
argv_single(struct mdoc *m, int line, |
argv_single(struct mdoc *m, int line, |
struct mdoc_argv *v, int *pos, char *buf) |
struct mdoc_argv *v, int *pos, char *buf) |
{ |
{ |
int c, ppos; |
int ppos; |
|
enum margserr ac; |
char *p; |
char *p; |
|
|
ppos = *pos; |
ppos = *pos; |
|
|
c = args(m, line, pos, buf, 0, &p); |
ac = args(m, line, pos, buf, 0, &p); |
if (ARGS_ERROR == c) |
if (ARGS_ERROR == ac) |
return(0); |
return(0); |
if (ARGS_EOLN == c) |
if (ARGS_EOLN == ac) |
return(mdoc_perr(m, line, ppos, EARGVAL)); |
return(mdoc_perr(m, line, ppos, EARGVAL)); |
|
|
v->sz = 1; |
v->sz = 1; |