X-Git-Url: http://g0dil.de/git?a=blobdiff_plain;f=senf%2FUtils%2FConsole%2FParsedCommand.mpp;h=de1c5f87644e19c643f07fecc0dbaa3604441cad;hb=6aae6e526573187ece558842e928578e5aa4cc4c;hp=340e073bd676109926929ef97070baa64d5c7287;hpb=601d1f509f5bb24df167a4dd5a20da67a0af9af8;p=senf.git diff --git a/senf/Utils/Console/ParsedCommand.mpp b/senf/Utils/Console/ParsedCommand.mpp index 340e073..de1c5f8 100644 --- a/senf/Utils/Console/ParsedCommand.mpp +++ b/senf/Utils/Console/ParsedCommand.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 @@ -40,6 +40,7 @@ #include #include #include +#include "senf/Utils/IgnoreValue.hh" // ///////////////////////////mpp.p//////////////////////////////////////// #elif BOOST_PP_IS_ITERATING // //////////////////////////////////////////// @@ -102,7 +103,7 @@ protected: private: ParsedCommandOverload(Function fn); - virtual void v_execute(boost::any & rv, std::ostream & os, ParseCommandInfo const & command) + virtual void v_execute(boost::any & rv, std::ostream & os, ParseCommandInfo const & command) const; Function function_; @@ -141,7 +142,7 @@ protected: private: ParsedCommandOverload(Function fn); - virtual void v_execute(boost::any & rv, std::ostream & os, ParseCommandInfo const & command) + virtual void v_execute(boost::any & rv, std::ostream & os, ParseCommandInfo const & command) const; Function function_; @@ -179,7 +180,7 @@ senf::console::detail::ArgumentInfo< senf::console::ParsedCommandOverload:: arg() const { - return static_cast< detail::ArgumentInfo< + return static_cast< detail::ArgumentInfo< typename boost::mpl::at_c::type > & >(arg(n)); } @@ -195,7 +196,7 @@ template prefix_ senf::console::ParsedCommandOverload:: ParsedCommandOverload(Function fn) - : function_ (fn) + : function_ (fn) { # define mpp_l(z,n,d) addParameter< mpp_ArgTypeN(n) >(); BOOST_PP_REPEAT( BOOST_PP_ITERATION(), mpp_l, _ ) @@ -220,7 +221,7 @@ senf::console::detail::ArgumentInfo< senf::console::ParsedCommandOverload:: arg() const { - return static_cast< detail::ArgumentInfo< + return static_cast< detail::ArgumentInfo< typename boost::mpl::at_c::type > & >(arg(n)); } @@ -236,7 +237,7 @@ template prefix_ senf::console::ParsedCommandOverload:: ParsedCommandOverload(Function fn) - : function_ (fn) + : function_ (fn) { # define mpp_l(z,n,d) addParameter< mpp_ArgTypeN(n) >(); BOOST_PP_REPEAT( BOOST_PP_ITERATION(), mpp_l, _ ) @@ -260,7 +261,7 @@ v_execute(boost::any & rv, std::ostream & os, ParseCommandInfo const & command) if ( nArgs > BOOST_PP_ITERATION() ) throw SyntaxErrorException("invalid number of arguments"); int nDefaults ( BOOST_PP_ITERATION() - nArgs ); - (void) nDefaults; + senf::IGNORE( nDefaults ); typedef typename boost::range_reverse_iterator::type riterator; @@ -278,7 +279,7 @@ v_execute(boost::any & rv, std::ostream & os, ParseCommandInfo const & command) ArgumentTraits< mpp_ArgTypeN(n) >::parse( *(i++), mpp_ArgN(n) ); \ } # define mpp_l_(z,n,d) mpp_l(z, BOOST_PP_SUB(BOOST_PP_DEC(BOOST_PP_ITERATION()), n), d) - BOOST_PP_REPEAT( BOOST_PP_ITERATION(), mpp_l_, _ ) + BOOST_PP_REPEAT( BOOST_PP_ITERATION(), mpp_l_, _ ) # undef mpp_l # undef mpp_l_ @@ -302,7 +303,7 @@ v_execute(boost::any & rv, std::ostream & os, ParseCommandInfo const & command) if ( nArgs > BOOST_PP_ITERATION() ) throw SyntaxErrorException("invalid number of arguments"); int nDefaults ( BOOST_PP_ITERATION() - nArgs ); - (void) nDefaults; + senf::IGNORE( nDefaults ); typedef typename boost::range_reverse_iterator::type riterator; @@ -320,7 +321,7 @@ v_execute(boost::any & rv, std::ostream & os, ParseCommandInfo const & command) ArgumentTraits< mpp_ArgTypeN(n) >::parse( *(i++), mpp_ArgN(n) ); \ } # define mpp_l_(z,n,d) mpp_l(z, BOOST_PP_SUB(BOOST_PP_DEC(BOOST_PP_ITERATION()), n), d) - BOOST_PP_REPEAT( BOOST_PP_ITERATION(), mpp_l_, _ ) + BOOST_PP_REPEAT( BOOST_PP_ITERATION(), mpp_l_, _ ) # undef mpp_l # undef mpp_l_ @@ -353,10 +354,10 @@ struct CreateParsedCommandOverload // Create keyword arg forwarding functions -template +template next_type arg ( BOOST_PP_ENUM_BINARY_PARAMS( BOOST_PP_ITERATION(), A, const & a ), typename arg_params::match< BOOST_PP_ENUM_PARAMS( BOOST_PP_ITERATION(), A ) >::type - kw = arg_params()) const { + kw = arg_params()) { return argInfo( kw(BOOST_PP_ENUM_PARAMS( BOOST_PP_ITERATION(), a )) ); }