1 | /* |
2 | +----------------------------------------------------------------------+ |
3 | | PHP Version 5 | |
4 | +----------------------------------------------------------------------+ |
5 | | Copyright (c) 1997-2015 The PHP Group | |
6 | +----------------------------------------------------------------------+ |
7 | | This source file is subject to version 3.01 of the PHP license, | |
8 | | that is bundled with this package in the file LICENSE, and is | |
9 | | available through the world-wide-web at the following url: | |
10 | | http://www.php.net/license/3_01.txt | |
11 | | If you did not receive a copy of the PHP license and are unable to | |
12 | | obtain it through the world-wide-web, please send a note to | |
13 | | license@php.net so we can mail you a copy immediately. | |
14 | +----------------------------------------------------------------------+ |
15 | | Author: Marcus Boerger <helly@php.net> | |
16 | +----------------------------------------------------------------------+ |
17 | */ |
18 | |
19 | /* $Id$ */ |
20 | |
21 | #ifndef PHP_GETOPT_H |
22 | #define PHP_GETOPT_H |
23 | |
24 | #include "php.h" |
25 | |
26 | #ifdef NETWARE |
27 | /* |
28 | As NetWare LibC has optind and optarg macros defined in unistd.h our local variables were getting mistakenly preprocessed so undeffing optind and optarg |
29 | */ |
30 | #undef optarg |
31 | #undef optind |
32 | #endif |
33 | |
34 | /* Define structure for one recognized option (both single char and long name). |
35 | * If short_open is '-' this is the last option. */ |
36 | typedef struct _opt_struct { |
37 | char opt_char; |
38 | int need_param; |
39 | char * opt_name; |
40 | } opt_struct; |
41 | |
42 | BEGIN_EXTERN_C() |
43 | /* holds the index of the latest fetched element from the opts array */ |
44 | extern PHPAPI int php_optidx; |
45 | PHPAPI int php_getopt(int argc, char* const *argv, const opt_struct opts[], char **optarg, int *optind, int show_err, int arg_start); |
46 | END_EXTERN_C() |
47 | |
48 | #endif |
49 | |
50 | /* |
51 | * Local variables: |
52 | * tab-width: 4 |
53 | * c-basic-offset: 4 |
54 | * End: |
55 | * vim600: noet sw=4 ts=4 fdm=marker |
56 | * vim<600: noet sw=4 ts=4 |
57 | */ |
58 | |