comparison DEPENDENCIES/generic/include/boost/spirit/home/support/terminal.hpp @ 101:c530137014c0

Update Boost headers (1.58.0)
author Chris Cannam
date Mon, 07 Sep 2015 11:12:49 +0100
parents 2665513ce2d3
children
comparison
equal deleted inserted replaced
100:793467b5e61c 101:c530137014c0
545 }; 545 };
546 } 546 }
547 547
548 }} 548 }}
549 549
550 #ifdef BOOST_SPIRIT_USE_PHOENIX_V3
551 namespace boost { namespace phoenix 550 namespace boost { namespace phoenix
552 { 551 {
553 template <typename Tag> 552 template <typename Tag>
554 struct is_custom_terminal<Tag, typename Tag::is_spirit_tag> 553 struct is_custom_terminal<Tag, typename Tag::is_spirit_tag>
555 : mpl::true_ 554 : mpl::true_
556 {}; 555 {};
557 556
558 template <typename Tag> 557 template <typename Tag>
559 struct custom_terminal<Tag, typename Tag::is_spirit_tag> 558 struct custom_terminal<Tag, typename Tag::is_spirit_tag>
560 { 559 {
560 #ifndef BOOST_PHOENIX_NO_SPECIALIZE_CUSTOM_TERMINAL
561 typedef void _is_default_custom_terminal; // fix for #7730
562 #endif
563
561 typedef spirit::terminal<Tag> result_type; 564 typedef spirit::terminal<Tag> result_type;
562 565
563 template <typename Context> 566 template <typename Context>
564 result_type operator()(Tag const & t, Context const &) 567 result_type operator()(Tag const & t, Context const &)
565 { 568 {
566 return spirit::terminal<Tag>(t); 569 return spirit::terminal<Tag>(t);
567 } 570 }
568 }; 571 };
569 }} 572 }}
570 #endif
571 573
572 // Define a spirit terminal. This macro may be placed in any namespace. 574 // Define a spirit terminal. This macro may be placed in any namespace.
573 // Common placeholders are placed in the main boost::spirit namespace 575 // Common placeholders are placed in the main boost::spirit namespace
574 // (see common_terminals.hpp) 576 // (see common_terminals.hpp)
575 577