Annotation of docbook2mdoc/extern.h, Revision 1.20
1.1 kristaps 1: #ifndef EXTERN_H
2: #define EXTERN_H
3:
4: /*
5: * All recognised node types.
6: */
7: enum nodeid {
8: NODE_ROOT = 0, /* Must comes first. */
9: /* Alpha-ordered hereafter. */
1.8 kristaps 10: NODE_ACRONYM,
1.17 kristaps 11: NODE_ANCHOR,
1.14 kristaps 12: NODE_APPLICATION,
1.1 kristaps 13: NODE_ARG,
1.16 kristaps 14: NODE_CAUTION,
1.1 kristaps 15: NODE_CITEREFENTRY,
16: NODE_CMDSYNOPSIS,
17: NODE_CODE,
18: NODE_COMMAND,
1.18 kristaps 19: NODE_CONSTANT,
20: NODE_COPYRIGHT,
1.3 kristaps 21: NODE_DATE,
1.1 kristaps 22: NODE_EMPHASIS,
1.12 kristaps 23: NODE_ENTRY,
1.8 kristaps 24: NODE_ENVAR,
1.5 kristaps 25: NODE_FILENAME,
1.1 kristaps 26: NODE_FUNCDEF,
27: NODE_FUNCPROTOTYPE,
28: NODE_FUNCSYNOPSIS,
29: NODE_FUNCSYNOPSISINFO,
30: NODE_FUNCTION,
1.18 kristaps 31: NODE_GROUP,
32: NODE_HOLDER,
33: NODE_INFO,
1.20 ! kristaps 34: NODE_INFORMALTABLE,
1.4 kristaps 35: NODE_ITEMIZEDLIST,
1.2 kristaps 36: NODE_LINK,
1.1 kristaps 37: NODE_LISTITEM,
1.6 kristaps 38: NODE_LITERAL,
1.1 kristaps 39: NODE_MANVOLNUM,
1.16 kristaps 40: NODE_NOTE,
1.1 kristaps 41: NODE_OPTION,
1.8 kristaps 42: NODE_ORDEREDLIST,
1.1 kristaps 43: NODE_PARA,
44: NODE_PARAMDEF,
45: NODE_PARAMETER,
46: NODE_PROGRAMLISTING,
1.9 kristaps 47: NODE_PROMPT,
1.15 kristaps 48: NODE_QUOTE,
1.1 kristaps 49: NODE_REFCLASS,
50: NODE_REFDESCRIPTOR,
51: NODE_REFENTRY,
1.3 kristaps 52: NODE_REFENTRYINFO,
1.1 kristaps 53: NODE_REFENTRYTITLE,
54: NODE_REFMETA,
55: NODE_REFMISCINFO,
56: NODE_REFNAME,
57: NODE_REFNAMEDIV,
58: NODE_REFPURPOSE,
59: NODE_REFSECT1,
1.7 kristaps 60: NODE_REFSECT2,
1.16 kristaps 61: NODE_REFSECT3,
62: NODE_REFSECTION,
1.1 kristaps 63: NODE_REFSYNOPSISDIV,
64: NODE_REPLACEABLE,
1.12 kristaps 65: NODE_ROW,
1.6 kristaps 66: NODE_SBR,
1.9 kristaps 67: NODE_SCREEN,
1.17 kristaps 68: NODE_SGMLTAG,
1.1 kristaps 69: NODE_STRUCTNAME,
70: NODE_SYNOPSIS,
1.12 kristaps 71: NODE_TABLE,
72: NODE_TBODY,
1.1 kristaps 73: NODE_TERM,
74: NODE_TEXT,
1.12 kristaps 75: NODE_TFOOT,
76: NODE_TGROUP,
77: NODE_THEAD,
1.16 kristaps 78: NODE_TIP,
1.1 kristaps 79: NODE_TITLE,
1.19 kristaps 80: NODE_TRADEMARK,
1.3 kristaps 81: NODE_ULINK,
1.10 kristaps 82: NODE_USERINPUT,
1.1 kristaps 83: NODE_VARIABLELIST,
84: NODE_VARLISTENTRY,
1.13 kristaps 85: NODE_VARNAME,
1.16 kristaps 86: NODE_WARNING,
1.17 kristaps 87: NODE_WORDASWORD,
1.18 kristaps 88: NODE_YEAR,
1.1 kristaps 89: NODE__MAX
90: };
91:
92: /*
93: * All recognised attribute keys.
94: */
95: enum attrkey {
96: /* Alpha-order... */
97: ATTRKEY_CHOICE = 0,
98: ATTRKEY_ID,
99: ATTRKEY_REP,
100: ATTRKEY__MAX
101: };
102:
103: /*
104: * All [explicitly] recognised attribute values.
105: * If an attribute has ATTRVAL__MAX, it could be a free-form.
106: */
107: enum attrval {
108: /* Alpha-order... */
109: ATTRVAL_NOREPEAT,
110: ATTRVAL_OPT,
111: ATTRVAL_PLAIN,
112: ATTRVAL_REPEAT,
113: ATTRVAL_REQ,
114: ATTRVAL__MAX
115: };
116:
117: __BEGIN_DECLS
118:
119: int isattrkey(enum nodeid node, enum attrkey key);
120: int isattrval(enum attrkey key, enum attrval val);
121: int isparent(enum nodeid node, enum nodeid parent);
122:
123: __END_DECLS
124:
125: #endif
CVSweb