[BACK]Return to apropos_db.h CVS log [TXT][DIR] Up to [cvsweb.bsd.lv] / mandoc

Annotation of mandoc/apropos_db.h, Revision 1.11

1.11    ! kristaps    1: /*     $Id: apropos_db.h,v 1.10 2011/11/27 23:11:37 schwarze Exp $ */
1.1       schwarze    2: /*
                      3:  * Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>
                      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 above
                      7:  * copyright notice and this permission notice appear in all copies.
                      8:  *
                      9:  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
                     10:  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
                     11:  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
                     12:  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
                     13:  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
                     14:  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
                     15:  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
                     16:  */
                     17: #ifndef APROPOS_H
                     18: #define APROPOS_H
                     19:
1.11    ! kristaps   20: enum   restype {
        !            21:        RESTYPE_MAN, /* man(7) file */
        !            22:        RESTYPE_MDOC, /* mdoc(7) file */
        !            23:        RESTYPE_CAT /* pre-formatted file */
        !            24: };
        !            25:
1.5       kristaps   26: struct res {
1.11    ! kristaps   27:        enum restype     type; /* input file type */
1.1       schwarze   28:        char            *file; /* file in file-system */
                     29:        char            *cat; /* category (3p, 3, etc.) */
                     30:        char            *title; /* title (FOO, etc.) */
                     31:        char            *arch; /* arch (or empty string) */
                     32:        char            *desc; /* description (from Nd) */
                     33:        unsigned int     rec; /* record in index */
1.8       schwarze   34:        /*
1.7       kristaps   35:         * The index volume.  This indexes into the array of directories
                     36:         * searched for manual page databases.
                     37:         */
1.8       schwarze   38:        unsigned int     volume;
1.1       schwarze   39: };
                     40:
                     41: struct opts {
                     42:        const char      *arch; /* restrict to architecture */
                     43:        const char      *cat; /* restrict to manual section */
                     44: };
                     45:
                     46: __BEGIN_DECLS
                     47:
                     48: struct expr;
                     49:
1.8       schwarze   50: int             apropos_search(int, char **, const struct opts *,
                     51:                        const struct expr *, size_t, void *,
1.5       kristaps   52:                        void (*)(struct res *, size_t, void *));
                     53: struct expr    *exprcomp(int, char *[], size_t *);
1.1       schwarze   54: void            exprfree(struct expr *);
1.9       kristaps   55: struct expr    *termcomp(int, char *[], size_t *);
1.1       schwarze   56:
                     57: __END_DECLS
                     58:
                     59: #endif /*!APROPOS_H*/

CVSweb