]> git.cameronkatri.com Git - mandoc.git/blob - mmain.h
termact.c -> term.c
[mandoc.git] / mmain.h
1 /* $Id: mmain.h,v 1.2 2009/02/23 07:09:13 kristaps Exp $ */
2 /*
3 * Copyright (c) 2008 Kristaps Dzonsons <kristaps@kth.se>
4 *
5 * Permission to use, copy, modify, and distribute this software for any
6 * purpose with or without fee is hereby granted, provided that the
7 * above copyright notice and this permission notice appear in all
8 * copies.
9 *
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
11 * WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
12 * WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
13 * AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL
14 * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
15 * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
16 * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
17 * PERFORMANCE OF THIS SOFTWARE.
18 */
19 #ifndef MMAIN_H
20 #define MMAIN_H
21
22 /*
23 * This is a convenience library for utilities implementing mdoc(3)
24 * accepting a similar set of command-line patterns. mmain handles
25 * error reporting (to the terminal), command-line parsing, preparing
26 * and reading the input file, and enacting the parse itself.
27 */
28
29 #include "mdoc.h"
30
31 __BEGIN_DECLS
32
33 struct mmain;
34
35 struct mmain *mmain_alloc(void);
36 __dead void mmain_exit(struct mmain *, int);
37 int mmain_getopt(struct mmain *, int, char *[],
38 const char *, const char *, void *,
39 int (*)(void *, int, const char *));
40 struct mdoc *mmain_mdoc(struct mmain *);
41 void mmain_usage(const char *);
42
43 __END_DECLS
44
45 #endif /*!MMAIN_H*/