chiark / gitweb /
stuff from chiark:/usr/local/src/misc/ (as found)
[chiark-utils.git] / cprogs / myopt.h~
1 /*
2  * libdpkg - Debian packaging suite library routines
3  * myopt.h - declarations for my very own option parsing
4  *
5  * Copyright (C) 1994,1995 Ian Jackson <iwj10@cus.cam.ac.uk>
6  *
7  * This is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as
9  * published by the Free Software Foundation; either version 2,
10  * or (at your option) any later version.
11  *
12  * This is distributed in the hope that it will be useful, but
13  * WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public
18  * License along with this file; if not, write to the Free Software
19  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20  */
21
22 #ifndef MYOPT_H
23 #define MYOPT_H
24
25 typedef void (*voidfnp)(void);
26
27 struct cmdinfo {
28   const char *olong;
29   char oshort;
30   int takesvalue; /* 0 = normal   1 = standard value   2 = option string cont */
31   int *iassignto;
32   const char **sassignto;
33   void (*call)(const struct cmdinfo*, const char *value);
34   int arg;
35   void *parg;
36   voidfnp farg;
37 };
38
39 void myopt(const char *const **argvp, const struct cmdinfo *cmdinfos);
40
41 #endif /* MYOPT_H */