1 // (C) Copyright Gennadiy Rozental 2005-2008. 2 // Use, modification, and distribution are subject to the 3 // Boost Software License, Version 1.0. (See accompanying file 4 // LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) 5 6 // See http://www.boost.org/libs/test for the library home page. 7 // 8 // File : $RCSfile$ 9 // 10 // Version : $Revision: 49312 $ 11 // 12 // Description : input validation helpers definition 13 // *************************************************************************** 14 15 #ifndef BOOST_RT_CLA_VALIDATION_HPP_062604GER 16 #define BOOST_RT_CLA_VALIDATION_HPP_062604GER 17 18 // Boost.Runtime.Parameter 19 #include <boost/test/utils/runtime/config.hpp> 20 21 #include <boost/test/utils/runtime/cla/fwd.hpp> 22 23 namespace boost { 24 25 namespace BOOST_RT_PARAM_NAMESPACE { 26 27 namespace cla { 28 29 // ************************************************************************** // 30 // ************** runtime::cla::report_input_error ************** // 31 // ************************************************************************** // 32 33 void report_input_error( argv_traverser const& tr, format_stream& msg ); 34 35 //____________________________________________________________________________// 36 37 #define BOOST_RT_CLA_VALIDATE_INPUT( b, tr, msg ) \ 38 if( b ) ; else ::boost::BOOST_RT_PARAM_NAMESPACE::cla::report_input_error( tr, format_stream().ref() << msg ) 39 40 //____________________________________________________________________________// 41 42 } // namespace cla 43 44 } // namespace BOOST_RT_PARAM_NAMESPACE 45 46 } // namespace boost 47 48 #ifndef BOOST_RT_PARAM_OFFLINE 49 50 # define BOOST_RT_PARAM_INLINE inline 51 # include <boost/test/utils/runtime/cla/validation.ipp> 52 53 #endif 54 55 #endif // BOOST_RT_CLA_VALIDATION_HPP_062604GER 56