1 #ifndef MINIMALISTIC_STUB_HXX
2 #define MINIMALISTIC_STUB_HXX
4 #include <boost/archive/binary_oarchive.hpp>
5 #include <boost/archive/binary_iarchive.hpp>
6 #include <boost/archive/xml_oarchive.hpp>
7 #include <boost/archive/xml_iarchive.hpp>
8 #include <boost/serialization/serialization.hpp>
11 #include <t2n_exception.hxx>
12 #include <command.hxx>
15 // used during parsing run with gccxml
17 /** @brief mark a function to export it via libt2n
20 LIBT2N_EXPORT std::string testfunc(const std::string &str)
26 #define LIBT2N_EXPORT __attribute((gccxml("libt2n-default")))
29 /** @brief tell libt2n about a default argument
30 @param type type of the default argument
31 @param value default value
34 LIBT2N_EXPORT std::string testfunc(LIBT2N_DEFAULT_ARG(const std::string str&,"hello world"))
39 @remarks Codegen gets default arguments via this define (gccxml-attribute) because gccxml
40 does not correctly output them (e.g. the namespace is ambiguous)
42 #define LIBT2N_DEFAULT_ARG(type,value) __attribute((gccxml("libt2n-default-arg",#value))) type = value
45 // used during regular compile
48 #define LIBT2N_DEFAULT_ARG(type,value) type = value