=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/mandoc/Attic/apropos_db.h,v retrieving revision 1.10 retrieving revision 1.11 diff -c -r1.10 -r1.11 *** src/usr.bin/mandoc/Attic/apropos_db.h 2011/12/19 02:26:33 1.10 --- src/usr.bin/mandoc/Attic/apropos_db.h 2012/04/15 11:54:47 1.11 *************** *** 1,6 **** ! /* $Id: apropos_db.h,v 1.10 2011/12/19 02:26:33 schwarze Exp $ */ /* ! * Copyright (c) 2011 Kristaps Dzonsons * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above --- 1,6 ---- ! /* $Id: apropos_db.h,v 1.11 2012/04/15 11:54:47 schwarze Exp $ */ /* ! * Copyright (c) 2011, 2012 Kristaps Dzonsons * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above *************** *** 36,41 **** --- 36,53 ---- * searched for manual page databases. */ unsigned int volume; + /* + * The following fields are used internally. + * + * Maintain a binary tree for checking the uniqueness of `rec' + * when adding elements to the results array. + * Since the results array is dynamic, use offset in the array + * instead of a pointer to the structure. + */ + int lhs; + int rhs; + int matched; /* expression is true */ + int *matches; /* partial truth evaluations */ }; struct opts { *************** *** 47,57 **** struct expr; ! int apropos_search(int, char **, const struct opts *, ! const struct expr *, size_t, void *, void (*)(struct res *, size_t, void *)); struct expr *exprcomp(int, char *[], size_t *); void exprfree(struct expr *); struct expr *termcomp(int, char *[], size_t *); __END_DECLS --- 59,71 ---- struct expr; ! int apropos_search(int, char **, const struct opts *, ! const struct expr *, size_t, ! void *, size_t *, struct res **, void (*)(struct res *, size_t, void *)); struct expr *exprcomp(int, char *[], size_t *); void exprfree(struct expr *); + void resfree(struct res *, size_t); struct expr *termcomp(int, char *[], size_t *); __END_DECLS