📄 methods.h
字号:
{ dispatch<R>::template do_dispatch<T1, T2, T3, T4, T5>( interp, boost::bind(f_, p, _1, _2, _3, _4, _5), tcl_cast<T1>::from(interp, objv[2]), tcl_cast<T2>::from(interp, objv[3]), tcl_cast<T3>::from(interp, objv[4]), tcl_cast<T4>::from(interp, objv[5]), tcl_cast<T5>::from(interp, objv[6])); } }private: mem_type f_; cmem_type cf_; bool cmem_;};template <class C, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6>class method6 : public object_cmd_base{ typedef R (C::*mem_type)(T1, T2, T3, T4, T5, T6); typedef R (C::*cmem_type)(T1, T2, T3, T4, T5, T6) const; public: method6(mem_type f) : f_(f), cmem_(false) {} method6(cmem_type f) : cf_(f), cmem_(true) {} virtual void invoke(void *pv, Tcl_Interp *interp, int objc, Tcl_Obj * CONST objv[], policies const &) { check_params_no(objc, 8); C *p = static_cast<C*>(pv); if (cmem_) { dispatch<R>::template do_dispatch<T1, T2, T3, T4, T5, T6>( interp, boost::bind(cf_, p, _1, _2, _3, _4, _5, _6), tcl_cast<T1>::from(interp, objv[2]), tcl_cast<T2>::from(interp, objv[3]), tcl_cast<T3>::from(interp, objv[4]), tcl_cast<T4>::from(interp, objv[5]), tcl_cast<T5>::from(interp, objv[6]), tcl_cast<T6>::from(interp, objv[7])); } else { dispatch<R>::template do_dispatch<T1, T2, T3, T4, T5, T6>( interp, boost::bind(f_, p, _1, _2, _3, _4, _5, _6), tcl_cast<T1>::from(interp, objv[2]), tcl_cast<T2>::from(interp, objv[3]), tcl_cast<T3>::from(interp, objv[4]), tcl_cast<T4>::from(interp, objv[5]), tcl_cast<T5>::from(interp, objv[6]), tcl_cast<T6>::from(interp, objv[7])); } }private: mem_type f_; cmem_type cf_; bool cmem_;};template <class C, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7>class method7 : public object_cmd_base{ typedef R (C::*mem_type)(T1, T2, T3, T4, T5, T6, T7); typedef R (C::*cmem_type)(T1, T2, T3, T4, T5, T6, T7) const; public: method7(mem_type f) : f_(f), cmem_(false) {} method7(cmem_type f) : cf_(f), cmem_(true) {} virtual void invoke(void *pv, Tcl_Interp *interp, int objc, Tcl_Obj * CONST objv[], policies const &) { check_params_no(objc, 9); C *p = static_cast<C*>(pv); if (cmem_) { dispatch<R>::template do_dispatch<T1, T2, T3, T4, T5, T6, T7>( interp, boost::bind(cf_, p, _1, _2, _3, _4, _5, _6, _7), tcl_cast<T1>::from(interp, objv[2]), tcl_cast<T2>::from(interp, objv[3]), tcl_cast<T3>::from(interp, objv[4]), tcl_cast<T4>::from(interp, objv[5]), tcl_cast<T5>::from(interp, objv[6]), tcl_cast<T6>::from(interp, objv[7]), tcl_cast<T7>::from(interp, objv[8])); } else { dispatch<R>::template do_dispatch<T1, T2, T3, T4, T5, T6, T7>( interp, boost::bind(f_, p, _1, _2, _3, _4, _5, _6, _7), tcl_cast<T1>::from(interp, objv[2]), tcl_cast<T2>::from(interp, objv[3]), tcl_cast<T3>::from(interp, objv[4]), tcl_cast<T4>::from(interp, objv[5]), tcl_cast<T5>::from(interp, objv[6]), tcl_cast<T6>::from(interp, objv[7]), tcl_cast<T7>::from(interp, objv[8])); } }private: mem_type f_; cmem_type cf_; bool cmem_;};template <class C, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8>class method8 : public object_cmd_base{ typedef R (C::*mem_type)(T1, T2, T3, T4, T5, T6, T7, T8); typedef R (C::*cmem_type)(T1, T2, T3, T4, T5, T6, T7, T8) const; public: method8(mem_type f) : f_(f), cmem_(false) {} method8(cmem_type f) : cf_(f), cmem_(true) {} virtual void invoke(void *pv, Tcl_Interp *interp, int objc, Tcl_Obj * CONST objv[], policies const &) { check_params_no(objc, 10); C *p = static_cast<C*>(pv); if (cmem_) { dispatch<R>::template do_dispatch< T1, T2, T3, T4, T5, T6, T7, T8>( interp, boost::bind(cf_, p, _1, _2, _3, _4, _5, _6, _7, _8), tcl_cast<T1>::from(interp, objv[2]), tcl_cast<T2>::from(interp, objv[3]), tcl_cast<T3>::from(interp, objv[4]), tcl_cast<T4>::from(interp, objv[5]), tcl_cast<T5>::from(interp, objv[6]), tcl_cast<T6>::from(interp, objv[7]), tcl_cast<T7>::from(interp, objv[8]), tcl_cast<T8>::from(interp, objv[9])); } else { dispatch<R>::template do_dispatch< T1, T2, T3, T4, T5, T6, T7, T8>( interp, boost::bind(f_, p, _1, _2, _3, _4, _5, _6, _7, _8), tcl_cast<T1>::from(interp, objv[2]), tcl_cast<T2>::from(interp, objv[3]), tcl_cast<T3>::from(interp, objv[4]), tcl_cast<T4>::from(interp, objv[5]), tcl_cast<T5>::from(interp, objv[6]), tcl_cast<T6>::from(interp, objv[7]), tcl_cast<T7>::from(interp, objv[8]), tcl_cast<T8>::from(interp, objv[9])); } }private: mem_type f_; cmem_type cf_; bool cmem_;};template <class C, typename R, typename T1, typename T2, typename T3, typename T4, typename T5, typename T6, typename T7, typename T8, typename T9>class method9 : public object_cmd_base{ typedef R (C::*mem_type)(T1, T2, T3, T4, T5, T6, T7, T8, T9); typedef R (C::*cmem_type)(T1, T2, T3, T4, T5, T6, T7, T8, T9) const; public: method9(mem_type f) : f_(f), cmem_(false) {} method9(cmem_type f) : cf_(f), cmem_(true) {} virtual void invoke(void *pv, Tcl_Interp *interp, int objc, Tcl_Obj * CONST objv[], policies const &) { check_params_no(objc, 11); C *p = static_cast<C*>(pv); if (cmem_) { dispatch<R>::template do_dispatch< T1, T2, T3, T4, T5, T6, T7, T8, T9>( interp, boost::bind(cf_, p, _1, _2, _3, _4, _5, _6, _7, _8, _9), tcl_cast<T1>::from(interp, objv[2]), tcl_cast<T2>::from(interp, objv[3]), tcl_cast<T3>::from(interp, objv[4]), tcl_cast<T4>::from(interp, objv[5]), tcl_cast<T5>::from(interp, objv[6]), tcl_cast<T6>::from(interp, objv[7]), tcl_cast<T7>::from(interp, objv[8]), tcl_cast<T8>::from(interp, objv[9]), tcl_cast<T9>::from(interp, objv[10])); } else { dispatch<R>::template do_dispatch< T1, T2, T3, T4, T5, T6, T7, T8, T9>( interp, boost::bind(f_, p, _1, _2, _3, _4, _5, _6, _7, _8, _9), tcl_cast<T1>::from(interp, objv[2]), tcl_cast<T2>::from(interp, objv[3]), tcl_cast<T3>::from(interp, objv[4]), tcl_cast<T4>::from(interp, objv[5]), tcl_cast<T5>::from(interp, objv[6]), tcl_cast<T6>::from(interp, objv[7]), tcl_cast<T7>::from(interp, objv[8]), tcl_cast<T8>::from(interp, objv[9]), tcl_cast<T9>::from(interp, objv[10])); } }private: mem_type f_; cmem_type cf_; bool cmem_;};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -