]> git.cameronkatri.com Git - mandoc.git/blob - private.h
Considerable improvements across the board.
[mandoc.git] / private.h
1 /* $Id: private.h,v 1.2 2008/11/23 22:30:53 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 PRIVATE_H
20 #define PRIVATE_H
21
22 struct md_rbuf {
23 int fd;
24 char *name;
25 char *buf;
26 size_t bufsz;
27 size_t line;
28 };
29
30 struct md_mbuf {
31 int fd;
32 char *name;
33 char *buf;
34 size_t bufsz;
35 size_t pos;
36 };
37
38 __BEGIN_DECLS
39
40 typedef int (*md_init)(const struct md_args *, struct md_mbuf *,
41 const struct md_rbuf *, void **);
42 typedef int (*md_exit)(const struct md_args *, struct md_mbuf *,
43 const struct md_rbuf *, int, void *);
44 typedef int (*md_line)(const struct md_args *,
45 struct md_mbuf *, const struct md_rbuf *,
46 const char *, size_t, void *);
47
48 int md_line_html4_strict(const struct md_args *,
49 struct md_mbuf *, const struct md_rbuf *,
50 const char *, size_t, void *);
51 int md_init_html4_strict(const struct md_args *,
52 struct md_mbuf *, const struct md_rbuf *,
53 void **);
54 int md_exit_html4_strict(const struct md_args *,
55 struct md_mbuf *, const struct md_rbuf *,
56 int, void *);
57
58 int md_line_dummy(const struct md_args *,
59 struct md_mbuf *, const struct md_rbuf *,
60 const char *, size_t, void *);
61
62 int md_buf_puts(struct md_mbuf *, const char *, size_t);
63 int md_buf_putchar(struct md_mbuf *, char);
64 int md_buf_putstring(struct md_mbuf *, const char *);
65
66 __END_DECLS
67
68 #endif /*!PRIVATE_H*/