/* -*-c-*-
*
- * $Id: conf.c,v 1.4 1999/10/15 21:12:36 mdw Exp $
+ * $Id: conf.c,v 1.5 1999/10/22 22:46:44 mdw Exp $
*
* Configuration parsing
*
/*----- Revision history --------------------------------------------------*
*
* $Log: conf.c,v $
+ * Revision 1.5 1999/10/22 22:46:44 mdw
+ * Improve documentation for conf_enum.
+ *
* Revision 1.4 1999/10/15 21:12:36 mdw
* Remove redundant debugging code.
*
* Returns: Index into list, zero-based, or @-1@.
*
* Use: Checks whether the current token is a string which matches
- * one of the comma-separated items given. If not, an error is
- * reported; otherwise the index of the matched item is
- * returned.
+ * one of the comma-separated items given. The return value is
+ * the index (zero-based) of the matched string in the list.
+ *
+ * The flags control the behaviour if no exact match is found.
+ * If @ENUM_ABBREV@ is set, and the current token is a left
+ * substring of exactly one of the possibilities, then that one
+ * is chosen. If @ENUM_NONE@ is set, the value @-1@ is
+ * returned; otherwise an error is reported and the program is
+ * terminated.
*/
int conf_enum(scanner *sc, const char *list, unsigned f, const char *err)