// $Id$
//
-// Copyright (C) 2008
+// Copyright (C) 2008
// Fraunhofer Institute for Open Communication Systems (FOKUS)
// Competence Center NETwork research (NET), St. Augustin, GERMANY
// Stefan Bund <g0dil@berlios.de>
#include <boost/bind.hpp>
#include <boost/mpl/vector.hpp>
#include <boost/mpl/at.hpp>
+#include "senf/Utils/IgnoreValue.hh"
// ///////////////////////////mpp.p////////////////////////////////////////
#elif BOOST_PP_IS_ITERATING // ////////////////////////////////////////////
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_;
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_;
senf::console::ParsedCommandOverload<FunctionTraits, ReturnValue, BOOST_PP_ITERATION() >::
arg() const
{
- return static_cast< detail::ArgumentInfo<
+ return static_cast< detail::ArgumentInfo<
typename boost::mpl::at_c<arg_types, n>::type > & >(arg(n));
}
prefix_
senf::console::ParsedCommandOverload<FunctionTraits, ReturnValue, BOOST_PP_ITERATION()>::
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, _ )
senf::console::ParsedCommandOverload<FunctionTraits, void, BOOST_PP_ITERATION() >::
arg() const
{
- return static_cast< detail::ArgumentInfo<
+ return static_cast< detail::ArgumentInfo<
typename boost::mpl::at_c<arg_types, n>::type > & >(arg(n));
}
prefix_
senf::console::ParsedCommandOverload<FunctionTraits, void, BOOST_PP_ITERATION() >::
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, _ )
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<const ParseCommandInfo::ArgumentsRange>::type
riterator;
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_
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<const ParseCommandInfo::ArgumentsRange>::type
riterator;
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_
// Create keyword arg forwarding functions
-template <BOOST_PP_ENUM_PARAMS( BOOST_PP_ITERATION(), class A ) >
+template <BOOST_PP_ENUM_PARAMS( BOOST_PP_ITERATION(), class A ) >
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 )) );
}