File: addlongoption2.cc

package info (click to toggle)
bobcat 3.01.00-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 6,612 kB
  • sloc: cpp: 12,107; makefile: 8,055; perl: 401; sh: 329
file content (26 lines) | stat: -rw-r--r-- 724 bytes parent folder | download | duplicates (6)
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
#include "arg.ih"

/*
    called by fillLongOption() to create the array of `struct option'
    (OptStruct) elements to be interpreted by getopt_long()
*/
void Arg__::addLongOption(OptStruct *optStruct,
                            string const &optString,
                            LongOption const &longOption)
{
    static int notUsed;

    optStruct->name = longOption.d_name.c_str();

    if (longOption.d_optionChar)       // existing option
    {
        optStruct->has_arg = setOptionType(optString, longOption);
        optStruct->flag    = 0;
        optStruct->val     = longOption.d_optionChar;
    }
    else
    {
        optStruct->has_arg = longOption.d_type,
        optStruct->flag    = &notUsed;
    }
}