#include <Makefile.h>
Public Types | |
| enum | QuoteMode { MAKE, SHELL, NONE } |
| Selects quoting modes. More... | |
Public Member Functions | |
| virtual | ~Makefile () |
| void | add (MakefileItem *item) |
| Adds a MakefileItem to a list of existing Items. | |
| int | writeMakefile (ostream &out) |
| Outputs all known MakefileItem to an ostream. | |
Static Public Member Functions | |
| Makefile & | getSingleton () |
| void | clean () |
| string | quote (const string &in, Makefile::QuoteMode mode) |
| Quotes and escapes characters using regular expressions. | |
| void | remove (MakefileItem *item) |
| Removes a MakefileItem to a list of existing Items. | |
Static Public Attributes | |
| const std::locale | locale |
| Used for numeric output to get a decimal dot anyways. | |
Private Member Functions | |
| Makefile () | |
Private Attributes | |
| std::vector< MakefileItem * > | items |
| Holds pointers to every existing MakefileItem. | |
| bool | written |
| has the makefile been written? | |
Static Private Attributes | |
| Makefile * | instance = NULL |
It also contains some static utils and enums.
Definition at line 46 of file Makefile.h.
|
|
Selects quoting modes.
Definition at line 69 of file Makefile.h. |
|
|
Definition at line 52 of file Makefile.h. Referenced by getSingleton(). |
|
|
Definition at line 55 of file Makefile.h. |
|
|
Adds a MakefileItem to a list of existing Items. This adds a MakefileItem to the output order. Only items added are output.
Definition at line 82 of file Makefile.h. |
|
|
Definition at line 50 of file Makefile.cpp. References instance. Referenced by remove(), trycond(), trymakefile(), and tryrule(). |
|
|
Definition at line 43 of file Makefile.cpp. References instance, and Makefile(). Referenced by main(), trycond(), trymakefile(), tryrule(), HuginBase::PanoramaMakefilelibExport::writeMakefile(), and HuginBase::AssistantMakefilelibExport::writeMakefile(). |
|
||||||||||||
|
Quotes and escapes characters using regular expressions. Two modes are currently distinguished, depending on the usage of the string. The regular expressions need a lot of backslash escaping, eg. \\ means backslash. We need to get through the compiler and the boost::regex library with the special characters The replacements in detail:
All replacements take care of variable references and do not replace patterns.
Definition at line 93 of file Makefile.cpp. References cstr, makefile::regex, and makefile::string. Referenced by HuginBase::PanoramaMakefilelibExport::createItems(), and tryreplace(). |
|
|
Removes a MakefileItem to a list of existing Items. MakefileItem::~MakefileItem removes itself using this. We have to make sure that we don't hold pointers to non-existing MakefileItems.
Definition at line 57 of file Makefile.cpp. |
|
|
Outputs all known MakefileItem to an ostream.
Definition at line 143 of file Makefile.cpp. References items, out, and written. Referenced by main(), trycond(), trymakefile(), tryrule(), HuginBase::PanoramaMakefilelibExport::writeMakefile(), and HuginBase::AssistantMakefilelibExport::writeMakefile(). |
|
|
Definition at line 32 of file Makefile.cpp. Referenced by clean(), getSingleton(), and remove(). |
|
|
Holds pointers to every existing MakefileItem.
Definition at line 49 of file Makefile.h. Referenced by writeMakefile(). |
|
|
Used for numeric output to get a decimal dot anyways. We use the "C" locale for NUMERIC and the system's for everything else.
|
|
|
has the makefile been written?
Definition at line 51 of file Makefile.h. Referenced by remove(), and writeMakefile(). |
1.3.9.1