|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r67064 - sandbox/configurator/boost/configurator/detail
From: for.dshevchenko_at_[hidden]
Date: 2010-12-06 07:08:12
Author: dshevchenko
Date: 2010-12-06 07:08:09 EST (Mon, 06 Dec 2010)
New Revision: 67064
URL: http://svn.boost.org/trac/boost/changeset/67064
Log:
Check 'exactly double' in exp_record
-This line, and those below, will be ignored--
M configurator/boost/configurator/detail/pure_options_obtainer.hpp
M configurator/boost/configurator/detail/validators.hpp
Text files modified:
sandbox/configurator/boost/configurator/detail/pure_options_obtainer.hpp | 2 ++
sandbox/configurator/boost/configurator/detail/validators.hpp | 3 ++-
2 files changed, 4 insertions(+), 1 deletions(-)
Modified: sandbox/configurator/boost/configurator/detail/pure_options_obtainer.hpp
==============================================================================
--- sandbox/configurator/boost/configurator/detail/pure_options_obtainer.hpp (original)
+++ sandbox/configurator/boost/configurator/detail/pure_options_obtainer.hpp 2010-12-06 07:08:09 EST (Mon, 06 Dec 2010)
@@ -69,6 +69,7 @@
public:
pure_options operator()( const str_storage& obtained_strings ) {
pure_options factual_obtained_options;
+
BOOST_FOREACH ( const std::string& s, obtained_strings ) {
if ( option_exists_in_this( s ) ) {
obtain_option( s, factual_obtained_options );
@@ -80,6 +81,7 @@
notify_about_meaningless_string( s );
}
}
+
check_last_section_closing();
nonmulti_sections_uniqueness_checker.clear();
return factual_obtained_options;
Modified: sandbox/configurator/boost/configurator/detail/validators.hpp
==============================================================================
--- sandbox/configurator/boost/configurator/detail/validators.hpp (original)
+++ sandbox/configurator/boost/configurator/detail/validators.hpp 2010-12-06 07:08:09 EST (Mon, 06 Dec 2010)
@@ -422,12 +422,13 @@
void check( const std::string& exp_record, const std::string& option_name ) {
#ifdef WITH_SEMANTIC_CHECK
using boost::spirit::qi::long_double;
+ using boost::spirit::qi::print;
using boost::spirit::qi::parse;
double number = 0.0;
bool valid_exp_record = parse( exp_record.begin()
, exp_record.end()
- , long_double
+ , long_double >> !print
, number );
if ( valid_exp_record ) {
store_for_option( option_name, number );
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk