#include "nub/ref.h"
#include "tcl/argspec.h"
#include "tcl/conversions.h"
#include "tcl/command.h"
#include "tcl/commandgroup.h"
#include "tcl/vecdispatch.h"
#include "rutz/functors.h"
#include "rutz/shared_ptr.h"
Go to the source code of this file.
Namespaces | |
namespace | rutz |
namespace | tcl |
Classes | |
struct | rutz::rutz::func_traits< mem_functor< MF > > |
Specialization of func_traits for mem_functor. More... | |
class | tcl::func_wrapper< N, R, Func > |
Generic tcl::func_wrapper definition. More... | |
struct | rutz::rutz::func_traits< tcl::func_wrapper< N, F, Func > > |
Specialization of func_traits for tcl::func_wrapper. More... | |
struct | tcl::tcl::func_wrapper< 0, R, Func > |
tcl::func_wrapper<0> -- zero arguments More... | |
struct | tcl::tcl::func_wrapper< 1, R, Func > |
tcl::func_wrapper<1> -- one argument More... | |
struct | tcl::tcl::func_wrapper< 2, R, Func > |
tcl::func_wrapper<2> -- two arguments More... | |
struct | tcl::tcl::func_wrapper< 3, R, Func > |
tcl::func_wrapper<3> -- three arguments More... | |
struct | tcl::tcl::func_wrapper< 4, R, Func > |
tcl::func_wrapper<4> -- four arguments More... | |
struct | tcl::tcl::func_wrapper< 5, R, Func > |
tcl::func_wrapper<5> -- five arguments More... | |
struct | tcl::tcl::func_wrapper< 6, R, Func > |
tcl::func_wrapper<6> -- six arguments More... | |
struct | tcl::tcl::func_wrapper< 7, R, Func > |
tcl::func_wrapper<7> -- seven arguments More... | |
struct | tcl::tcl::func_wrapper< 8, R, Func > |
tcl::func_wrapper<8> -- eight arguments More... | |
class | tcl::generic_function< R, func_wrapper > |
generic_function implements tcl::command using a held functor. More... | |
class | tcl::tcl::generic_function< void, func_wrapper > |
Specialization for functors with void return types. More... | |
Defines | |
#define | EXTRACT_PARAM(N) |
Functions | |
template<class T> | |
nub::ref< T > | tcl::aux_convert_to (Tcl_Obj *obj, nub::ref< T > *) |
Overload of aux_convert_to for nub::ref. | |
template<class T> | |
tcl::obj | tcl::aux_convert_from (nub::ref< T > obj) |
Overload of aux_convert_from for nub::ref. | |
template<class T> | |
nub::soft_ref< T > | tcl::aux_convert_to (Tcl_Obj *obj, nub::soft_ref< T > *) |
Overload of aux_convert_to for nub::soft_ref. | |
template<class T> | |
tcl::obj | tcl::aux_convert_from (nub::soft_ref< T > obj) |
Overload of aux_convert_from for nub::soft_ref. | |
template<class Fptr> | |
func_wrapper < rutz::func_traits< Fptr > ::num_args, typename rutz::func_traits< Fptr > ::retn_t, typename rutz::functor_of< Fptr >::type > | tcl::build_func_wrapper (Fptr f) |
Factory function to make tcl::func_wrapper's from any functor or function ptr. | |
template<class func_wrapper> | |
void | tcl::make_generic_command (tcl::interpreter &interp, func_wrapper f, const char *cmd_name, const char *usage, const arg_spec &spec, const rutz::file_pos &src_pos) |
Factory function for tcl::command's from functors. | |
template<class func_wrapper> | |
void | tcl::make_generic_vec_command (tcl::interpreter &interp, func_wrapper f, const char *cmd_name, const char *usage, const arg_spec &spec, unsigned int keyarg, const rutz::file_pos &src_pos) |
Factory function for vectorized tcl::command's from functors. | |
template<class Func> | |
void | tcl::make_command (tcl::interpreter &interp, Func f, const char *cmd_name, const char *usage, const rutz::file_pos &src_pos) |
Factory function for tcl::command's from function pointers. | |
template<class Func> | |
void | tcl::make_vec_command (tcl::interpreter &interp, Func f, const char *cmd_name, const char *usage, unsigned int keyarg, const rutz::file_pos &src_pos) |
Factory function for vectorized tcl::command's from function pointers. |
Definition in file makecmd.h.
#define EXTRACT_PARAM | ( | N | ) |
Value:
typename rutz::func_traits<Func>::arg##N##_t p##N = \ ctx.template get_arg<typename rutz::func_traits<Func>::arg##N##_t>(N);