source@mandoc.bsd.lv
 help / color / Atom feed
* mandoc: Cleanup, no functional change: For clarity, stop storing the 
@ 2019-07-26 23:12 schwarze
  0 siblings, 0 replies; only message in thread
From: schwarze @ 2019-07-26 23:12 UTC (permalink / raw)
  To: source

Log Message:
-----------
Cleanup, no functional change:
For clarity, stop storing the same information (in this case, -O
settings) in two structs.  Give the local struct in main.c a more
descriptive name (output state).

Modified Files:
--------------
    mandoc:
        main.c

Revision Data
-------------
Index: main.c
===================================================================
RCS file: /home/cvs/mandoc/mandoc/main.c,v
retrieving revision 1.334
retrieving revision 1.335
diff -Lmain.c -Lmain.c -u -p -r1.334 -r1.335
--- main.c
+++ main.c
@@ -77,8 +77,7 @@ enum	outt {
 	OUTT_PDF	/* -Tpdf */
 };
 
-struct	curparse {
-	struct manoutput *outopts;	/* output options */
+struct	outstate {
 	void		 *outdata;	/* data for output */
 	int		  wstop;	/* stop after a file with a warning */
 	enum outt	  outtype;	/* which output to use */
@@ -95,9 +94,9 @@ static	int		  fs_lookup(const struct man
 static	int		  fs_search(const struct mansearch *,
 				const struct manpaths *, int, char**,
 				struct manpage **, size_t *);
-static	void		  outdata_alloc(struct curparse *);
+static	void		  outdata_alloc(struct outstate *, struct manoutput *);
 static	void		  parse(struct mparse *, int, const char *,
-				struct curparse *);
+				struct outstate *, struct manoutput *);
 static	void		  passthrough(int, int);
 static	void		  run_pager(struct tag_files *);
 static	pid_t		  spawn_pager(struct tag_files *);
@@ -113,7 +112,7 @@ int
 main(int argc, char *argv[])
 {
 	struct manconf	 conf;		/* Manpaths and output options. */
-	struct curparse	 curp;
+	struct outstate	 outst;		/* Output state. */
 	struct winsize	 ws;		/* Result of ioctl(TIOCGWINSZ). */
 	struct mansearch search;	/* Search options. */
 	struct manpage	*res, *resp;	/* Search results. */
@@ -187,14 +186,16 @@ main(int argc, char *argv[])
 	else
 		search.argmode = ARG_FILE;
 
-	/* Parser and formatter options. */
+	/* Parser options. */
 
+	options = MPARSE_SO | MPARSE_UTF8 | MPARSE_LATIN1;
 	os_e = MANDOC_OS_OTHER;
 	os_s = NULL;
-	memset(&curp, 0, sizeof(struct curparse));
-	curp.outtype = OUTT_LOCALE;
-	curp.outopts = &conf.output;
-	options = MPARSE_SO | MPARSE_UTF8 | MPARSE_LATIN1;
+
+	/* Formatter options. */
+
+	memset(&outst, 0, sizeof(outst));
+	outst.outtype = OUTT_LOCALE;
 
 	use_pager = 1;
 	tag_files = NULL;
@@ -274,27 +275,27 @@ main(int argc, char *argv[])
 			break;
 		case 'T':
 			if (strcmp(optarg, "ascii") == 0)
-				curp.outtype = OUTT_ASCII;
+				outst.outtype = OUTT_ASCII;
 			else if (strcmp(optarg, "lint") == 0) {
-				curp.outtype = OUTT_LINT;
+				outst.outtype = OUTT_LINT;
 				mandoc_msg_setoutfile(stdout);
 				mandoc_msg_setmin(MANDOCERR_BASE);
 			} else if (strcmp(optarg, "tree") == 0)
-				curp.outtype = OUTT_TREE;
+				outst.outtype = OUTT_TREE;
 			else if (strcmp(optarg, "man") == 0)
-				curp.outtype = OUTT_MAN;
+				outst.outtype = OUTT_MAN;
 			else if (strcmp(optarg, "html") == 0)
-				curp.outtype = OUTT_HTML;
+				outst.outtype = OUTT_HTML;
 			else if (strcmp(optarg, "markdown") == 0)
-				curp.outtype = OUTT_MARKDOWN;
+				outst.outtype = OUTT_MARKDOWN;
 			else if (strcmp(optarg, "utf8") == 0)
-				curp.outtype = OUTT_UTF8;
+				outst.outtype = OUTT_UTF8;
 			else if (strcmp(optarg, "locale") == 0)
-				curp.outtype = OUTT_LOCALE;
+				outst.outtype = OUTT_LOCALE;
 			else if (strcmp(optarg, "ps") == 0)
-				curp.outtype = OUTT_PS;
+				outst.outtype = OUTT_PS;
 			else if (strcmp(optarg, "pdf") == 0)
-				curp.outtype = OUTT_PDF;
+				outst.outtype = OUTT_PDF;
 			else {
 				mandoc_msg(MANDOCERR_BADARG_BAD, 0, 0,
 				    "-T %s", optarg);
@@ -302,7 +303,7 @@ main(int argc, char *argv[])
 			}
 			break;
 		case 'W':
-			if (woptions(optarg, &os_e, &curp.wstop) == -1)
+			if (woptions(optarg, &os_e, &outst.wstop) == -1)
 				return mandoc_msg_getrc();
 			break;
 		case 'w':
@@ -346,7 +347,7 @@ main(int argc, char *argv[])
 		}
 	}
 
-	if (curp.outtype != OUTT_TREE || !curp.outopts->noval)
+	if (outst.outtype != OUTT_TREE || conf.output.noval == 0)
 		options |= MPARSE_VALIDATE;
 
 	if (outmode == OUTMODE_FLN ||
@@ -565,7 +566,7 @@ main(int argc, char *argv[])
 		}
 		thisarg = "<stdin>";
 		mandoc_msg_setinfilename(thisarg);
-		parse(mp, STDIN_FILENO, thisarg, &curp);
+		parse(mp, STDIN_FILENO, thisarg, &outst, &conf.output);
 		mandoc_msg_setinfilename(NULL);
 	}
 
@@ -605,7 +606,7 @@ main(int argc, char *argv[])
 			}
 
 			if (resp == NULL || resp->form == FORM_SRC)
-				parse(mp, fd, thisarg, &curp);
+				parse(mp, fd, thisarg, &outst, &conf.output);
 			else
 				passthrough(fd, conf.output.synopsisonly);
 
@@ -622,10 +623,10 @@ main(int argc, char *argv[])
 				break;
 			}
 
-			if (argc > 1 && curp.outtype <= OUTT_UTF8) {
-				if (curp.outdata == NULL)
-					outdata_alloc(&curp);
-				terminal_sepline(curp.outdata);
+			if (argc > 1 && outst.outtype <= OUTT_UTF8) {
+				if (outst.outdata == NULL)
+					outdata_alloc(&outst, &conf.output);
+				terminal_sepline(outst.outdata);
 			}
 		} else
 			mandoc_msg(resp == NULL ? MANDOCERR_BADARG_BAD :
@@ -633,7 +634,7 @@ main(int argc, char *argv[])
 
 		mandoc_msg_setinfilename(NULL);
 
-		if (curp.wstop && mandoc_msg_getrc() != MANDOCLEVEL_OK)
+		if (outst.wstop && mandoc_msg_getrc() != MANDOCLEVEL_OK)
 			break;
 
 		if (resp != NULL)
@@ -648,19 +649,19 @@ main(int argc, char *argv[])
 		close(startdir);
 	}
 
-	if (curp.outdata != NULL) {
-		switch (curp.outtype) {
+	if (outst.outdata != NULL) {
+		switch (outst.outtype) {
 		case OUTT_HTML:
-			html_free(curp.outdata);
+			html_free(outst.outdata);
 			break;
 		case OUTT_UTF8:
 		case OUTT_LOCALE:
 		case OUTT_ASCII:
-			ascii_free(curp.outdata);
+			ascii_free(outst.outdata);
 			break;
 		case OUTT_PDF:
 		case OUTT_PS:
-			pspdf_free(curp.outdata);
+			pspdf_free(outst.outdata);
 			break;
 		default:
 			break;
@@ -681,7 +682,7 @@ out:
 		tag_write();
 		run_pager(tag_files);
 		tag_unlink();
-	} else if (curp.outtype != OUTT_LINT &&
+	} else if (outst.outtype != OUTT_LINT &&
 	    (search.argmode == ARG_FILE || sz > 0))
 		mandoc_msg_summary();
 
@@ -842,7 +843,8 @@ fs_search(const struct mansearch *cfg, c
 }
 
 static void
-parse(struct mparse *mp, int fd, const char *file, struct curparse *curp)
+parse(struct mparse *mp, int fd, const char *file,
+    struct outstate *outst, struct manoutput *outconf)
 {
 	struct roff_meta *meta;
 
@@ -860,13 +862,13 @@ parse(struct mparse *mp, int fd, const c
 	 * level, do not produce output.
 	 */
 
-	if (curp->wstop && mandoc_msg_getrc() != MANDOCLEVEL_OK)
+	if (outst->wstop && mandoc_msg_getrc() != MANDOCLEVEL_OK)
 		return;
 
-	if (curp->outdata == NULL)
-		outdata_alloc(curp);
-	else if (curp->outtype == OUTT_HTML)
-		html_reset(curp);
+	if (outst->outdata == NULL)
+		outdata_alloc(outst, outconf);
+	else if (outst->outtype == OUTT_HTML)
+		html_reset(outst);
 
 	mandoc_xr_reset();
 	meta = mparse_result(mp);
@@ -874,37 +876,37 @@ parse(struct mparse *mp, int fd, const c
 	/* Execute the out device, if it exists. */
 
 	if (meta->macroset == MACROSET_MDOC) {
-		switch (curp->outtype) {
+		switch (outst->outtype) {
 		case OUTT_HTML:
-			html_mdoc(curp->outdata, meta);
+			html_mdoc(outst->outdata, meta);
 			break;
 		case OUTT_TREE:
-			tree_mdoc(curp->outdata, meta);
+			tree_mdoc(outst->outdata, meta);
 			break;
 		case OUTT_MAN:
-			man_mdoc(curp->outdata, meta);
+			man_mdoc(outst->outdata, meta);
 			break;
 		case OUTT_PDF:
 		case OUTT_ASCII:
 		case OUTT_UTF8:
 		case OUTT_LOCALE:
 		case OUTT_PS:
-			terminal_mdoc(curp->outdata, meta);
+			terminal_mdoc(outst->outdata, meta);
 			break;
 		case OUTT_MARKDOWN:
-			markdown_mdoc(curp->outdata, meta);
+			markdown_mdoc(outst->outdata, meta);
 			break;
 		default:
 			break;
 		}
 	}
 	if (meta->macroset == MACROSET_MAN) {
-		switch (curp->outtype) {
+		switch (outst->outtype) {
 		case OUTT_HTML:
-			html_man(curp->outdata, meta);
+			html_man(outst->outdata, meta);
 			break;
 		case OUTT_TREE:
-			tree_man(curp->outdata, meta);
+			tree_man(outst->outdata, meta);
 			break;
 		case OUTT_MAN:
 			mparse_copy(mp);
@@ -914,7 +916,7 @@ parse(struct mparse *mp, int fd, const c
 		case OUTT_UTF8:
 		case OUTT_LOCALE:
 		case OUTT_PS:
-			terminal_man(curp->outdata, meta);
+			terminal_man(outst->outdata, meta);
 			break;
 		default:
 			break;
@@ -958,26 +960,26 @@ check_xr(void)
 }
 
 static void
-outdata_alloc(struct curparse *curp)
+outdata_alloc(struct outstate *outst, struct manoutput *outconf)
 {
-	switch (curp->outtype) {
+	switch (outst->outtype) {
 	case OUTT_HTML:
-		curp->outdata = html_alloc(curp->outopts);
+		outst->outdata = html_alloc(outconf);
 		break;
 	case OUTT_UTF8:
-		curp->outdata = utf8_alloc(curp->outopts);
+		outst->outdata = utf8_alloc(outconf);
 		break;
 	case OUTT_LOCALE:
-		curp->outdata = locale_alloc(curp->outopts);
+		outst->outdata = locale_alloc(outconf);
 		break;
 	case OUTT_ASCII:
-		curp->outdata = ascii_alloc(curp->outopts);
+		outst->outdata = ascii_alloc(outconf);
 		break;
 	case OUTT_PDF:
-		curp->outdata = pdf_alloc(curp->outopts);
+		outst->outdata = pdf_alloc(outconf);
 		break;
 	case OUTT_PS:
-		curp->outdata = ps_alloc(curp->outopts);
+		outst->outdata = ps_alloc(outconf);
 		break;
 	default:
 		break;
--
 To unsubscribe send an email to source+unsubscribe@mandoc.bsd.lv

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, back to index

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-26 23:12 mandoc: Cleanup, no functional change: For clarity, stop storing the schwarze

source@mandoc.bsd.lv

Archives are clonable: git clone --mirror http://inbox.vuxu.org/mandoc-source

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://inbox.vuxu.org/vuxu.archive.mandoc.source


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git