aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2011-03-23 12:40:04 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2011-03-23 12:40:04 +0000
commit589f74a138ab93e81b858ebb9a8218a19d5a2017 (patch)
treed308e82980fe305f185c5df31a534d64c0501595
parent74625e09d203b8b3c31182a00609d7b437f942c7 (diff)
downloadmandoc-589f74a138ab93e81b858ebb9a8218a19d5a2017.tar.gz
mandoc-589f74a138ab93e81b858ebb9a8218a19d5a2017.tar.zst
mandoc-589f74a138ab93e81b858ebb9a8218a19d5a2017.zip
First, make -man ARGS_EOLN et al. be an enum. Second, remove
ARGS_ERROR, as it is never returned by man_args(). Then clean up invocations of man_args() to only check for ARGS_EOLN.
-rw-r--r--libman.h16
-rw-r--r--man_argv.c6
-rw-r--r--man_macro.c28
3 files changed, 18 insertions, 32 deletions
diff --git a/libman.h b/libman.h
index f67ef4cd..4a64c076 100644
--- a/libman.h
+++ b/libman.h
@@ -1,4 +1,4 @@
-/* $Id: libman.h,v 1.49 2011/03/23 12:33:01 kristaps Exp $ */
+/* $Id: libman.h,v 1.50 2011/03/23 12:40:04 kristaps Exp $ */
/*
* Copyright (c) 2009, 2010 Kristaps Dzonsons <kristaps@bsd.lv>
*
@@ -56,6 +56,12 @@ struct man_macro {
#define MAN_NOCLOSE (1 << 4) /* See blk_exp(). */
};
+enum margserr {
+ ARGS_EOLN,
+ ARGS_WORD,
+ ARGS_QWORD
+};
+
extern const struct man_macro *const man_macros;
__BEGIN_DECLS
@@ -72,13 +78,9 @@ int man_body_alloc(struct man *, int, int, enum mant);
int man_elem_alloc(struct man *, int, int, enum mant);
void man_node_delete(struct man *, struct man_node *);
void man_hash_init(void);
-enum mant man_hash_find(const char *);
+enum mant man_hash_find(const char *);
int man_macroend(struct man *);
-int man_args(struct man *, int, int *, char *, char **);
-#define ARGS_ERROR (-1)
-#define ARGS_EOLN (0)
-#define ARGS_WORD (1)
-#define ARGS_QWORD (1)
+enum margserr man_args(struct man *, int, int *, char *, char **);
int man_valid_post(struct man *);
int man_valid_pre(struct man *, struct man_node *);
int man_unscope(struct man *,
diff --git a/man_argv.c b/man_argv.c
index eb9d47f6..f9f76f63 100644
--- a/man_argv.c
+++ b/man_argv.c
@@ -1,4 +1,4 @@
-/* $Id: man_argv.c,v 1.7 2011/03/22 14:33:05 kristaps Exp $ */
+/* $Id: man_argv.c,v 1.8 2011/03/23 12:40:04 kristaps Exp $ */
/*
* Copyright (c) 2011 Ingo Schwarze <schwarze@openbsd.org>
*
@@ -18,8 +18,6 @@
#include "config.h"
#endif
-#include <sys/types.h>
-
#include <assert.h>
#include "man.h"
@@ -27,7 +25,7 @@
#include "libman.h"
#include "libmandoc.h"
-int
+enum margserr
man_args(struct man *m, int line, int *pos, char *buf, char **v)
{
char *start;
diff --git a/man_macro.c b/man_macro.c
index 273f48d0..744167bc 100644
--- a/man_macro.c
+++ b/man_macro.c
@@ -1,4 +1,4 @@
-/* $Id: man_macro.c,v 1.58 2011/03/22 14:33:05 kristaps Exp $ */
+/* $Id: man_macro.c,v 1.59 2011/03/23 12:40:04 kristaps Exp $ */
/*
* Copyright (c) 2008, 2009, 2010 Kristaps Dzonsons <kristaps@bsd.lv>
*
@@ -296,7 +296,7 @@ blk_close(MACRO_PROT_ARGS)
int
blk_exp(MACRO_PROT_ARGS)
{
- int w, la;
+ int la;
char *p;
/*
@@ -317,13 +317,8 @@ blk_exp(MACRO_PROT_ARGS)
for (;;) {
la = *pos;
- w = man_args(m, line, pos, buf, &p);
-
- if (-1 == w)
- return(0);
- if (0 == w)
+ if (ARGS_EOLN == man_args(m, line, pos, buf, &p))
break;
-
if ( ! man_word_alloc(m, line, la, p))
return(0);
}
@@ -348,7 +343,7 @@ blk_exp(MACRO_PROT_ARGS)
int
blk_imp(MACRO_PROT_ARGS)
{
- int w, la;
+ int la;
char *p;
struct man_node *n;
@@ -372,13 +367,8 @@ blk_imp(MACRO_PROT_ARGS)
for (;;) {
la = *pos;
- w = man_args(m, line, pos, buf, &p);
-
- if (-1 == w)
- return(0);
- if (0 == w)
+ if (ARGS_EOLN == man_args(m, line, pos, buf, &p))
break;
-
if ( ! man_word_alloc(m, line, la, p))
return(0);
}
@@ -406,7 +396,7 @@ blk_imp(MACRO_PROT_ARGS)
int
in_line_eoln(MACRO_PROT_ARGS)
{
- int w, la;
+ int la;
char *p;
struct man_node *n;
@@ -417,11 +407,7 @@ in_line_eoln(MACRO_PROT_ARGS)
for (;;) {
la = *pos;
- w = man_args(m, line, pos, buf, &p);
-
- if (-1 == w)
- return(0);
- if (0 == w)
+ if (ARGS_EOLN == man_args(m, line, pos, buf, &p))
break;
if ( ! man_word_alloc(m, line, la, p))
return(0);