OpenCog Framework
Branch: master, revision 6f0b7fc776b08468cf1b74aa9db028f387b4f0c0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
getopt.h
Go to the documentation of this file.
1
/* $NetBSD: getopt.h,v 1.4 2000/07/07 10:43:54 ad Exp $ */
2
/* $FreeBSD: src/include/getopt.h,v 1.1 2002/09/29 04:14:30 eric Exp $ */
3
4
/*-
5
* Copyright (c) 2000 The NetBSD Foundation, Inc.
6
* All rights reserved.
7
*
8
* This code is derived from software contributed to The NetBSD Foundation
9
* by Dieter Baron and Thomas Klausner.
10
*
11
* Redistribution and use in source and binary forms, with or without
12
* modification, are permitted provided that the following conditions
13
* are met:
14
* 1. Redistributions of source code must retain the above copyright
15
* notice, this list of conditions and the following disclaimer.
16
* 2. Redistributions in binary form must reproduce the above copyright
17
* notice, this list of conditions and the following disclaimer in the
18
* documentation and/or other materials provided with the distribution.
19
* 3. All advertising materials mentioning features or use of this software
20
* must display the following acknowledgement:
21
* This product includes software developed by the NetBSD
22
* Foundation, Inc. and its contributors.
23
* 4. Neither the name of The NetBSD Foundation nor the names of its
24
* contributors may be used to endorse or promote products derived
25
* from this software without specific prior written permission.
26
*
27
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
28
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
29
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
30
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
31
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
36
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
37
* POSSIBILITY OF SUCH DAMAGE.
38
*/
39
40
#ifndef _GETOPT_H_
41
#define _GETOPT_H_
42
43
#define GETOPT_API
44
#ifdef _WIN32
45
/* from <sys/cdefs.h> */
46
# ifdef __cplusplus
47
# define __BEGIN_DECLS extern "C" {
48
# define __END_DECLS }
49
# else
50
# define __BEGIN_DECLS
51
# define __END_DECLS
52
# endif
53
# define __P(args) args
54
#endif
55
56
/*#ifndef _WIN32
57
#include <sys/cdefs.h>
58
#include <unistd.h>
59
#endif*/
60
61
/*
62
* Gnu like getopt_long() and BSD4.4 getsubopt()/optreset extensions
63
*/
64
#if !defined(_POSIX_SOURCE) && !defined(_XOPEN_SOURCE)
65
#define no_argument 0
66
#define required_argument 1
67
#define optional_argument 2
68
69
struct
option
{
70
/* name of long option */
71
const
char
*
name
;
72
/*
73
* one of no_argument, required_argument, and optional_argument:
74
* whether option takes an argument
75
*/
76
int
has_arg
;
77
/* if not NULL, set *flag to val when option found */
78
int
*
flag
;
79
/* if flag not NULL, value to set *flag to; else return value */
80
int
val
;
81
};
82
83
__BEGIN_DECLS
84
GETOPT_API
int
getopt_long
__P
((
int
,
char
*
const
*,
const
char
*,
85
const
struct
option
*,
int
*));
86
__END_DECLS
87
#endif
88
89
#ifdef _WIN32
90
/* These are global getopt variables */
91
__BEGIN_DECLS
92
93
GETOPT_API
extern
int
opterr,
/* if error message should be printed */
94
optind,
/* index into parent argv vector */
95
optopt,
/* character checked for validity */
96
optreset;
/* reset getopt */
97
GETOPT_API
extern
char
* optarg;
/* argument associated with option */
98
99
/* Original getopt */
100
GETOPT_API
int
getopt
__P
((
int
,
char
*
const
*,
const
char
*));
101
102
__END_DECLS
103
#endif
104
105
#endif
/* !_GETOPT_H_ */
__P
__BEGIN_DECLS GETOPT_API int getopt_long __P((int, char *const *, const char *, const struct option *, int *))
option::val
int val
Definition:
getopt.h:80
option
Definition:
getopt.h:69
GETOPT_API
#define GETOPT_API
Definition:
getopt.h:43
option::name
const char * name
Definition:
getopt.h:71
option::flag
int * flag
Definition:
getopt.h:78
option::has_arg
int has_arg
Definition:
getopt.h:76
include
win32
getopt.h
Generated on Sat Aug 22 2015 21:00:13 for OpenCog Framework by
1.8.6