]> git.cameronkatri.com Git - mandoc.git/blob - action.c
Actions and validations properly added.
[mandoc.git] / action.c
1 /* $Id: action.c,v 1.1 2009/01/05 14:14:04 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 #include <assert.h>
20 #include <stdlib.h>
21
22 #include "private.h"
23
24 typedef int (*a_act)(struct mdoc *, int, int,
25 int, const char *[],
26 int, const struct mdoc_arg *);
27
28
29 struct actions {
30 a_act action;
31 };
32
33
34 const struct actions mdoc_actions[MDOC_MAX] = {
35 { NULL }, /* \" */
36 { NULL }, /* Dd */
37 { NULL }, /* Dt */
38 { NULL }, /* Os */
39 { NULL }, /* Sh */
40 { NULL }, /* Ss */
41 { NULL }, /* Pp */
42 { NULL }, /* D1 */
43 { NULL }, /* Dl */
44 { NULL }, /* Bd */
45 { NULL }, /* Ed */
46 { NULL }, /* Bl */
47 { NULL }, /* El */
48 { NULL }, /* It */
49 { NULL }, /* Ad */
50 { NULL }, /* An */
51 { NULL }, /* Ar */
52 { NULL }, /* Cd */
53 { NULL }, /* Cm */
54 { NULL }, /* Dv */
55 { NULL }, /* Er */
56 { NULL }, /* Ev */
57 { NULL }, /* Ex */
58 { NULL }, /* Fa */
59 { NULL }, /* Fd */
60 { NULL }, /* Fl */
61 { NULL }, /* Fn */
62 { NULL }, /* Ft */
63 { NULL }, /* Ic */
64 { NULL }, /* In */
65 { NULL }, /* Li */
66 { NULL }, /* Nd */
67 { NULL }, /* Nm */
68 { NULL }, /* Op */
69 { NULL }, /* Ot */
70 { NULL }, /* Pa */
71 { NULL }, /* Rv */
72 { NULL }, /* St */
73 { NULL }, /* Va */
74 { NULL }, /* Vt */
75 { NULL }, /* Xr */
76 { NULL }, /* %A */
77 { NULL }, /* %B */
78 { NULL }, /* %D */
79 { NULL }, /* %I */
80 { NULL }, /* %J */
81 { NULL }, /* %N */
82 { NULL }, /* %O */
83 { NULL }, /* %P */
84 { NULL }, /* %R */
85 { NULL }, /* %T */
86 { NULL }, /* %V */
87 { NULL }, /* Ac */
88 { NULL }, /* Ao */
89 { NULL }, /* Aq */
90 { NULL }, /* At */
91 { NULL }, /* Bc */
92 { NULL }, /* Bf */
93 { NULL }, /* Bo */
94 { NULL }, /* Bq */
95 { NULL }, /* Bsx */
96 { NULL }, /* Bx */
97 { NULL }, /* Db */
98 { NULL }, /* Dc */
99 { NULL }, /* Do */
100 { NULL }, /* Dq */
101 { NULL }, /* Ec */
102 { NULL }, /* Ef */
103 { NULL }, /* Em */
104 { NULL }, /* Eo */
105 { NULL }, /* Fx */
106 { NULL }, /* Ms */
107 { NULL }, /* No */
108 { NULL }, /* Ns */
109 { NULL }, /* Nx */
110 { NULL }, /* Ox */
111 { NULL }, /* Pc */
112 { NULL }, /* Pf */
113 { NULL }, /* Po */
114 { NULL }, /* Pq */
115 { NULL }, /* Qc */
116 { NULL }, /* Ql */
117 { NULL }, /* Qo */
118 { NULL }, /* Qq */
119 { NULL }, /* Re */
120 { NULL }, /* Rs */
121 { NULL }, /* Sc */
122 { NULL }, /* So */
123 { NULL }, /* Sq */
124 { NULL }, /* Sm */
125 { NULL }, /* Sx */
126 { NULL }, /* Sy */
127 { NULL }, /* Tn */
128 { NULL }, /* Ux */
129 { NULL }, /* Xc */
130 { NULL }, /* Xo */
131 { NULL }, /* Fo */
132 { NULL }, /* Fc */
133 { NULL }, /* Oo */
134 { NULL }, /* Oc */
135 { NULL }, /* Bk */
136 { NULL }, /* Ek */
137 { NULL }, /* Bt */
138 { NULL }, /* Hf */
139 { NULL }, /* Fr */
140 { NULL }, /* Ud */
141 };
142
143
144 int
145 mdoc_action(struct mdoc *mdoc, int tok, int pos)
146 {
147
148 return(1);
149 }
150
151 #if 0
152 /* Post-processing. */
153 switch (tok) {
154 case (MDOC_Sh):
155 sec = mdoc_atosec((size_t)sz, _CC(args));
156 if (SEC_CUSTOM != sec)
157 mdoc->sec_lastn = sec;
158 mdoc->sec_last = sec;
159 break;
160 default:
161 break;
162 }
163 #endif
164