21 #ifndef DATATOOLS_INTROSPECTION_BUILDER_H 22 #define DATATOOLS_INTROSPECTION_BUILDER_H 30 #include <boost/lexical_cast.hpp> 31 #include <boost/program_options/options_description.hpp> 33 #include <camp/function.hpp> 42 namespace introspection {
61 std::string
composed_tag(
const std::string & prefix_,
const std::string & what_);
103 method_builder(
const std::string & classname_,
const std::string & funcname_);
120 std::size_t param_index_,
132 static void dump_func(
const camp::Function & func_, std::ostream & out_ = std::clog);
139 std::string _classname_;
140 std::string _funcname_;
143 std::string _func_what_;
144 std::string _func_full_name_;
145 const camp::Function * _func_ =
nullptr;
160 void build(camp::Args & args_);
168 method * _method_ =
nullptr;
169 const boost::program_options::variables_map * _vmap_ =
nullptr;
176 #endif // DATATOOLS_INTROSPECTION_BUILDER_H
Description of a method or function.