summaryrefslogtreecommitdiff
path: root/autoopts/optionProcess.3
blob: f0d047d24911e247447078e2b0f6041c01128375 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
.TH optionProcess 3 2012-08-11 "" "Programmer's Manual"
.\"  DO NOT EDIT THIS FILE   (optionProcess.3)
.\"  
.\"  It has been AutoGen-ed  August 11, 2012 at 09:44:56 AM by AutoGen 5.16.2
.\"  From the definitions    ./funcs.def
.\"  and the template file   agman3.tpl
.SH NAME
optionProcess - this is the main option processing routine
.sp 1
.SH SYNOPSIS

#include <\fIyour-opts.h\fP>
.br
cc [...] -o outfile infile.c -l\fBopts\fP [...]
.sp 1
int \fBoptionProcess\fP(tOptions* \fIpOpts\fP, int \fIargc\fP, char** \fIargv\fP);
.sp 1
.SH DESCRIPTION
This is the main entry point for processing options.  It is intended
that this procedure be called once at the beginning of the execution of
a program.  Depending on options selected earlier, it is sometimes
necessary to stop and restart option processing, or to select completely
different sets of options.  This can be done easily, but you generally
do not want to do this.

The number of arguments processed always includes the program name.
If one of the arguments is "--", then it is counted and the processing
stops.  If an error was encountered and errors are to be tolerated, then
the returned value is the index of the argument causing the error.
A hyphen by itself ("-") will also cause processing to stop and will
\fInot\fP be counted among the processed arguments.  A hyphen by itself
is treated as an operand.  Encountering an operand stops option
processing.
.TP
.IR pOpts
program options descriptor
.TP
.IR argc
program arg count
.TP
.IR argv
program arg vector
.sp 1
.SH RETURN VALUE
the count of the arguments processed
.sp 1
.SH ERRORS
Errors will cause diagnostics to be printed.  \fBexit(3)\fP may
or may not be called.  It depends upon whether or not the options
were generated with the "allow-errors" attribute, or if the
ERRSKIP_OPTERR or ERRSTOP_OPTERR macros were invoked.
.SH SEE ALSO
The \fIinfo\fP documentation for the -l\fIopts\fP library.
.br
ao_string_tokenize(3), configFileLoad(3), optionFileLoad(3), optionFindNextValue(3), optionFindValue(3), optionFree(3), optionGetValue(3), optionLoadLine(3), optionNextValue(3), optionOnlyUsage(3), optionRestore(3), optionSaveFile(3), optionSaveState(3), optionUnloadNested(3), optionVersion(3), pathfind(3), strequate(3), streqvcmp(3), streqvmap(3), strneqvcmp(3), strtransform(3),