version 1.73, 2011/03/23 15:46:02 |
version 1.74, 2011/04/07 01:08:42 |
Line 652 args_checkpunct(struct mdoc *m, const char *buf, int i |
|
Line 652 args_checkpunct(struct mdoc *m, const char *buf, int i |
|
static enum mdocargt |
static enum mdocargt |
argv_a2arg(enum mdoct tok, const char *p) |
argv_a2arg(enum mdoct tok, const char *p) |
{ |
{ |
const enum mdocargt *args; |
const enum mdocargt *argsp; |
|
|
args = NULL; |
argsp = NULL; |
|
|
switch (tok) { |
switch (tok) { |
case (MDOC_An): |
case (MDOC_An): |
args = args_An; |
argsp = args_An; |
break; |
break; |
case (MDOC_Bd): |
case (MDOC_Bd): |
args = args_Bd; |
argsp = args_Bd; |
break; |
break; |
case (MDOC_Bf): |
case (MDOC_Bf): |
args = args_Bf; |
argsp = args_Bf; |
break; |
break; |
case (MDOC_Bk): |
case (MDOC_Bk): |
args = args_Bk; |
argsp = args_Bk; |
break; |
break; |
case (MDOC_Bl): |
case (MDOC_Bl): |
args = args_Bl; |
argsp = args_Bl; |
break; |
break; |
case (MDOC_Rv): |
case (MDOC_Rv): |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case (MDOC_Ex): |
case (MDOC_Ex): |
args = args_Ex; |
argsp = args_Ex; |
break; |
break; |
default: |
default: |
return(MDOC_ARG_MAX); |
return(MDOC_ARG_MAX); |
} |
} |
|
|
assert(args); |
assert(argsp); |
|
|
for ( ; MDOC_ARG_MAX != *args ; args++) |
for ( ; MDOC_ARG_MAX != *argsp ; argsp++) |
if (0 == strcmp(p, mdoc_argnames[*args])) |
if (0 == strcmp(p, mdoc_argnames[*argsp])) |
return(*args); |
return(*argsp); |
|
|
return(MDOC_ARG_MAX); |
return(MDOC_ARG_MAX); |
} |
} |