Update of /cvsroot/cpptool/rfta/src/rftaparser
In directory sc8-pr-cvs1:/tmp/cvs-serv20028/src/rftaparser
Modified Files:
MiniParserTest.cpp MiniParserTest.h
Log Message:
* added callback to function member test using Boost.Bind.
Index: MiniParserTest.cpp
===================================================================
RCS file: /cvsroot/cpptool/rfta/src/rftaparser/MiniParserTest.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** MiniParserTest.cpp 4 May 2003 22:13:51 -0000 1.2
--- MiniParserTest.cpp 5 May 2003 07:37:09 -0000 1.3
***************
*** 6,9 ****
--- 6,11 ----
#include "stdafx.h"
#include "MiniParserTest.h"
+ #include <functional>
+ #include <boost/bind.hpp>
***************
*** 72,75 ****
--- 74,78 ----
MiniParserTest::setUp()
{
+ callbackText_ = Xtl::CStringView();
}
***************
*** 216,226 ****
}
void
MiniParserTest::testParseCallback()
{
! const Xtl::MiniParser &parser = Xtl::spaces>> Xtl::StringMiniParser( "ab" )[&callback1] >> Xtl::spaces;
const std::string text( " ab " );
RFTA_ASSERT_MINIPARSER_PASS( text, parser );
RFTA_ASSERT_EQUAL( "ab", callback1Text.str() );
}
--- 219,248 ----
}
+
+ void
+ MiniParserTest::callback( const Xtl::CStringView &text )
+ {
+ callbackText_ = text;
+ }
+
+
void
MiniParserTest::testParseCallback()
{
! const Xtl::MiniParser &parser = Xtl::spaces >> Xtl::StringMiniParser( "ab" )[&callback1] >> Xtl::spaces;
const std::string text( " ab " );
RFTA_ASSERT_MINIPARSER_PASS( text, parser );
RFTA_ASSERT_EQUAL( "ab", callback1Text.str() );
+
+ Xtl::MiniParser::MatchedCallback fcb;
+ fcb = boost::bind( &MiniParserTest::callback, this, _1 );
+
+
+ const Xtl::MiniParser &parser2 =
+ Xtl::spaces
+ >> Xtl::StringMiniParser( "ab" )[boost::bind( &MiniParserTest::callback, this, _1 )]
+ >> Xtl::spaces;
+ RFTA_ASSERT_MINIPARSER_PASS( text, parser2 );
+ RFTA_ASSERT_EQUAL( "ab", callbackText_.str() );
}
Index: MiniParserTest.h
===================================================================
RCS file: /cvsroot/cpptool/rfta/src/rftaparser/MiniParserTest.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** MiniParserTest.h 4 May 2003 22:13:51 -0000 1.2
--- MiniParserTest.h 5 May 2003 07:37:09 -0000 1.3
***************
*** 60,63 ****
--- 60,66 ----
private:
+ void callback( const Xtl::CStringView &text );
+
+ Xtl::CStringView callbackText_;
};
|