GCC Code Coverage Report | |||||||||||||||||||||
|
|||||||||||||||||||||
Line | Branch | Exec | Source |
1 |
|||
2 |
/*************************************** |
||
3 |
Auteur : Pierre Aubert |
||
4 |
Mail : pierre.aubert@lapp.in2p3.fr |
||
5 |
Licence : CeCILL-C |
||
6 |
****************************************/ |
||
7 |
|||
8 |
#include "phoenix_assert.h" |
||
9 |
#include "phoenix_check.h" |
||
10 |
#include "OptionParser.h" |
||
11 |
|||
12 |
///Create the OptionParser of this program |
||
13 |
/** @return OptionParser of this program |
||
14 |
*/ |
||
15 |
10 |
OptionParser createOptionParser(){ |
|
16 |
✓✓ | 20 |
OptionParser parser(true, "1.0.0"); |
17 |
✓✓ | 10 |
parser.addMode("class"); |
18 |
✓✓✓✓ |
10 |
parser.addOption("name", "n", OptionType::STRING, true, "base name of the file to be created"); |
19 |
✓ | 20 |
std::string templateDef(""); |
20 |
✓✓✓✓ ✓ |
10 |
parser.addOption("template", "t", templateDef, "template definition of the class (ex: 'typename T' or 'typename T, typename U', etc)"); |
21 |
✓✓✓✓ |
10 |
parser.addOption("dir", "d", OptionType::DIRECTORY, false, "directory to be used"); |
22 |
✓ | 10 |
parser.closeMode(); |
23 |
|||
24 |
✓✓ | 10 |
parser.addMode("source"); |
25 |
✓✓✓✓ |
10 |
parser.addOption("name", "n", OptionType::STRING, true, "base name of the file to be created"); |
26 |
✓ | 10 |
parser.closeMode(); |
27 |
20 |
return parser; |
|
28 |
} |
||
29 |
|||
30 |
10 |
int main(int argc, char** argv){ |
|
31 |
✓ | 10 |
OptionParser parser = createOptionParser(); |
32 |
// parser.print(); |
||
33 |
✓ | 10 |
parser.parseArgument(argc, argv); |
34 |
|||
35 |
✓✓ | 4 |
const OptionMode & classMode = parser.getMode("class"); |
36 |
✓✓ | 4 |
const OptionMode & sourceMode = parser.getMode("source"); |
37 |
|||
38 |
✓✓✓ | 4 |
if(classMode.isParsed()){ //We are using the class mode |
39 |
// std::cout << "Class mode activated" << std::endl; |
||
40 |
✓✓ | 6 |
std::string className(""), templateDef(""); |
41 |
✓✓ | 2 |
classMode.getValue(className, "name"); |
42 |
✓✓ | 2 |
classMode.getValue(templateDef, "template"); |
43 |
// std::cout << "name of the class to be generated : '" << className << "', templateDef = '"<<templateDef<<"'" << std::endl; |
||
44 |
|||
45 |
✓✓✓✓ ✓✓✓ |
2 |
phoenix_assert(phoenix_check("Check class name", className, "classname")); |
46 |
✓✓✓✓ ✓✓✓ |
2 |
phoenix_assert(phoenix_check("Check type name", templateDef, "typename T")); |
47 |
} |
||
48 |
|||
49 |
✓✓✓ | 4 |
if(sourceMode.isParsed()){ //We are using the source mode |
50 |
// std::cout << "Source mode activated" << std::endl; |
||
51 |
✓ | 2 |
std::string fileName(""); |
52 |
✓✓ | 2 |
sourceMode.getValue(fileName, "name"); |
53 |
// std::cout << "name of the header/source files to be generated : " << fileName << "'" << std::endl; |
||
54 |
|||
55 |
✓✓✓✓ ✓✓✓ |
2 |
phoenix_assert(phoenix_check("Check source name", fileName, "sourcename")); |
56 |
} |
||
57 |
4 |
return 0; |
|
58 |
} |
||
59 |
|||
60 |
Generated by: GCOVR (Version 4.2) |