hppcreate alpha1
-
hppcreate erstellt automatisch headerdateien.
Warum sollte ich das nutzen? es gibt das doch schon tausendfach/meine ide macht das für mich.
- hppcreate soll schneller sein. bedient wird das programm über die kommandozeile. was nicht mit reinkommen soll, muss nicht angegeben werden.
Bedienung: Beispiele
hppcreate ClassName#ifndef CLASSNAME_20070108_HPP #define CLASSNAME_20070108_HPP class ClassName { }; #endif
hppcreate -i cstdlib -d boost::filesystem::path -n foo::bar -f "void work()"
-f "void someMethod() n" -m "IAM_THE_AUTHOR" Baz#ifndef BAZ_IAM_THE_AUTHOR_HPP #define BAZ_IAM_THE_AUTHOR_HPP #include <cstdlib> namespace boost { namespace filesystem { class path; } // filesystem } // boost namespace foo { namespace bar { class Baz { public: void work(); void someMethod(); private: virtual void someMethodImpl() = 0; }; } // bar } // foo #endif
Programmumfang
- der include-guard kann angepasst werden
- es können header dateien zum includieren angegeben werden
- es können deklarationen angegeben werden
- der namespace der klasse kann angegeben werden
- es können funktionen + zugriffsrecht angegeben werden
- es gibt eine NVI-Option!!!
- die parameter können in beliebiger reihenfolge stehenWas das Programm nicht kann:
- *hust* die ausgabe in die datei schreiben. die standardausgabe muss umgelenkt werden ([user]$ ./a.out > datei).
- das programm kontrolliert die funktions-syntax nicht. deshalb reagiert das programm sehr empfindlich auf falscheingaben.
- leerzeilen zwischen den einzelnen segmentent einfügen.Voraussetzungen
- boost 1.33.1 (program_options und spirit)Installation
- der pfad der boost-includes muss eventuell angepasst werden. ansonsten einfach nur make eingeben.ich würde mich über feedback freuen, vor allem was fehlende optionen angeht, zum beispiel ob operatoren automatisch erstellt werden sollen etc. natürlich auch über bug-reports.