Update of /cvsroot/boost/boost/boost/xpressive/detail/static
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv30530/detail/static
Modified Files:
grammar.hpp static.hpp
Log Message:
grammar tweaks, misc clean-up
Index: grammar.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/xpressive/detail/static/grammar.hpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -d -r1.4 -r1.5
--- grammar.hpp 19 Nov 2006 04:50:53 -0000 1.4
+++ grammar.hpp 19 Nov 2006 21:15:17 -0000 1.5
@@ -174,7 +174,17 @@
struct XpressiveListSet
: proto::or_<
proto::meta::comma< XpressiveListSet<Char>,
proto::meta::terminal<Char> >
+ , proto::meta::comma< XpressiveListSet<Char>,
proto::meta::terminal<char> >
, proto::meta::assign<detail::set_initializer_type,
proto::meta::terminal<Char> >
+ , proto::meta::assign<detail::set_initializer_type,
proto::meta::terminal<char> >
+ >
+ {};
+
+ template<>
+ struct XpressiveListSet<char>
+ : proto::or_<
+ proto::meta::comma< XpressiveListSet<char>,
proto::meta::terminal<char> >
+ , proto::meta::assign<detail::set_initializer_type,
proto::meta::terminal<char> >
>
{};
@@ -226,15 +236,28 @@
{};
template<typename Char>
+ struct XpressiveComplementedCharacterLiteral
+ : proto::or_<
+
proto::meta::complement<proto::meta::terminal<detail::literal_placeholder<Char,
mpl::_> > >
+ ,
proto::meta::complement<proto::meta::terminal<detail::literal_placeholder<char,
mpl::_> > >
+ >
+ {};
+
+ template<>
+ struct XpressiveComplementedCharacterLiteral<char>
+ :
proto::meta::complement<proto::meta::terminal<detail::literal_placeholder<char,
mpl::_> > >
+ {};
+
+ template<typename Char>
struct XpressiveTerminal
: proto::or_<
proto::and_<
proto::meta::terminal<mpl::_>
, proto::if_<detail::is_xpressive_terminal<Char,
proto::meta::arg<mpl::_> > >
>
- , proto::meta::complement<proto::meta::terminal<Char> >
,
proto::meta::complement<proto::meta::terminal<detail::posix_charset_placeholder>
>
,
proto::meta::complement<proto::meta::terminal<detail::logical_newline_placeholder>
>
+ , XpressiveComplementedCharacterLiteral<Char>
, proto::or_<
XpressiveComplementedSet<Char>
, XpressiveTaggedSubExpression<Char>
Index: static.hpp
===================================================================
RCS file: /cvsroot/boost/boost/boost/xpressive/detail/static/static.hpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- static.hpp 2 Nov 2006 06:56:42 -0000 1.11
+++ static.hpp 19 Nov 2006 21:15:17 -0000 1.12
@@ -31,26 +31,6 @@
namespace boost { namespace xpressive { namespace detail
{
-#ifdef BOOST_XPR_DEBUG_STACK
-///////////////////////////////////////////////////////////////////////////////
-// top_type
-//
-template<typename Top>
-struct top_type
-{
- typedef Top type;
-};
-
-///////////////////////////////////////////////////////////////////////////////
-// top_type
-//
-template<typename Top, typename Next>
-struct top_type<stacked_xpression<Top, Next> >
-{
- typedef Next type;
-};
-#endif
-
///////////////////////////////////////////////////////////////////////////////
// stacked_xpression
//
@@ -71,9 +51,8 @@
// jump back to the xpression on top of the xpression stack,
// and keep the xpression on the stack.
template<typename BidiIter>
- static bool top_match(state_type<BidiIter> &state, xpression_base const
*top)
+ static bool top_match(state_type<BidiIter> &state, void const *top)
{
- BOOST_XPR_DEBUG_STACK_ASSERT(typeid(*top) == typeid(typename
top_type<Top>::type));
return static_cast<Top const *>(top)->
BOOST_NESTED_TEMPLATE push_match<Top>(state);
}
@@ -82,9 +61,8 @@
// jump back to the xpression on top of the xpression stack,
// pop the xpression off the stack.
template<typename BidiIter>
- static bool pop_match(state_type<BidiIter> &state, xpression_base const
*top)
+ static bool pop_match(state_type<BidiIter> &state, void const *top)
{
- BOOST_XPR_DEBUG_STACK_ASSERT(typeid(*top) == typeid(typename
top_type<Top>::type));
return static_cast<Top const *>(top)->match(state);
}
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Boost-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/boost-cvs