X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FUtils%2Ftype_traits.mpp;h=07558f113c89eca4d77afb3610d39b239cc93439;hb=4101c2b818ec67e7469ebb44f030eed2185c4ab0;hp=eaf46c7d45c41b5c4c1b94a10b58ff7b8733ce2e;hpb=96a801acd64d520710b9c899ae23d462c759db38;p=senf.git diff --git a/senf/Utils/type_traits.mpp b/senf/Utils/type_traits.mpp index eaf46c7..07558f1 100644 --- a/senf/Utils/type_traits.mpp +++ b/senf/Utils/type_traits.mpp @@ -1,6 +1,6 @@ // $Id$ // -// Copyright (C) 2008 +// Copyright (C) 2008 // Fraunhofer Institute for Open Communication Systems (FOKUS) // Competence Center NETwork research (NET), St. Augustin, GERMANY // Stefan Bund @@ -37,9 +37,9 @@ #include #include -// ///////////////////////////mpp.p//////////////////////////////////////// -#elif BOOST_PP_IS_ITERATING // //////////////////////////////////////////// -// //////////////////////////////////////////////////////////////////////// +//-///////////////////////////mpp.p//////////////////////////////////////// +#elif BOOST_PP_IS_ITERATING //-//////////////////////////////////////////// +//-//////////////////////////////////////////////////////////////////////// // Local Macros #define mpp_Arg(n) BOOST_PP_CAT(BOOST_PP_CAT(arg, BOOST_PP_INC(n)), _type) @@ -53,9 +53,9 @@ #define mpp_TrailTplArgs() BOOST_PP_ENUM_TRAILING_PARAMS( BOOST_PP_ITERATION(), class A ) #define mpp_Args() BOOST_PP_ENUM_PARAMS( BOOST_PP_ITERATION(), A ) -// //////////////////////////////////////////////////////////////////////// -#if BOOST_PP_ITERATION_FLAGS()==1 // ////////////////////////////////////// -// //////////////////////////////////////////////////////////////////////// +//-//////////////////////////////////////////////////////////////////////// +#if BOOST_PP_ITERATION_FLAGS()==1 //-////////////////////////////////////// +//-//////////////////////////////////////////////////////////////////////// template struct function_traits_remove_arg @@ -82,9 +82,21 @@ struct function_traits_arg_type typedef typename Traits::mpp_CurArg() type; }; -// //////////////////////////////////////////////////////////////////////// -#endif // ///////////////////////////////////////////////////////////////// -// //////////////////////////////////////////////////////////////////////// +template +struct remove_member_pointer +{ + typedef T type (mpp_Args()); +}; + +template +struct remove_member_pointer +{ + typedef T type (mpp_Args()); +}; + +//-//////////////////////////////////////////////////////////////////////// +#endif //-///////////////////////////////////////////////////////////////// +//-//////////////////////////////////////////////////////////////////////// // Undefine local Macros #undef mpp_Args @@ -95,14 +107,14 @@ struct function_traits_arg_type #undef mpp_OtherArgs_ #undef mpp_Arg -// //////////////////////////////////////////////////////////////////////// +//-//////////////////////////////////////////////////////////////////////// /* (save-excursion (re-search-backward "^// Undefine local Macros") (forward-line 1) (delete-region (point) (progn (search-forward - "// ////") (forward-line -1) (point))) (insert "\n") (let ((b (point)) - (e (progn (insert (save-excursion (re-search-backward + "//-////") (forward-line -1) (point))) (insert "\n") (let ((b (point)) + (e (progn (insert (save-excursion (re-search-backward "^// Local Macros") (search-forward "#define") (beginning-of-line) - (buffer-substring (point) (progn (search-forward "// ////") + (buffer-substring (point) (progn (search-forward "//-////") (search-backward "#define") (forward-line 1) (point))))) (point)))) (reverse-region b e) (shell-command-on-region b e "grep -F '#define'" nil t) (goto-char b) (while (looking-at "#define") (delete-char 7) (insert @@ -110,8 +122,8 @@ struct function_traits_arg_type (delete-region (1- (point)) (progn (end-of-line) (point))) (forward-line 1)))) */ -#endif // ///////////////////////////////////////////////////////////////// -// ///////////////////////////mpp.e//////////////////////////////////////// +#endif //-///////////////////////////////////////////////////////////////// +//-///////////////////////////mpp.e//////////////////////////////////////// // Local Variables: