/
usr
/
include
/
boost
/
range
/
detail
/
/usr/include/boost/range/detail
mkdir
upload
Name
Size
Mode
Actions
any_iterator.hpp
19467
0644
edit
dl
rm
any_iterator_buffer.hpp
2736
0644
edit
dl
rm
any_iterator_interface.hpp
10095
0644
edit
dl
rm
any_iterator_wrapper.hpp
21359
0644
edit
dl
rm
collection_traits.hpp
8505
0644
edit
dl
rm
collection_traits_detail.hpp
14471
0644
edit
dl
rm
combine_cxx03.hpp
2390
0644
edit
dl
rm
combine_cxx11.hpp
1048
0644
edit
dl
rm
combine_no_rvalue.hpp
2493
0644
edit
dl
rm
combine_rvalue.hpp
1183
0644
edit
dl
rm
common.hpp
6660
0644
edit
dl
rm
default_constructible_unary_fn.hpp
2038
0644
edit
dl
rm
demote_iterator_traversal_tag.hpp
5440
0644
edit
dl
rm
difference_type.hpp
3162
0644
edit
dl
rm
empty.hpp
3171
0644
edit
dl
rm
extract_optional_type.hpp
2018
0644
edit
dl
rm
has_member_size.hpp
1527
0644
edit
dl
rm
implementation_help.hpp
3177
0644
edit
dl
rm
join_iterator.hpp
10945
0644
edit
dl
rm
less.hpp
472
0644
edit
dl
rm
microsoft.hpp
28928
0644
edit
dl
rm
misc_concept.hpp
822
0644
edit
dl
rm
msvc_has_iterator_workaround.hpp
3612
0644
edit
dl
rm
range_return.hpp
6182
0644
edit
dl
rm
safe_bool.hpp
2067
0644
edit
dl
rm
sfinae.hpp
2699
0644
edit
dl
rm
sizer.hpp
946
0644
edit
dl
rm
str_types.hpp
813
0644
edit
dl
rm
Edit:
/usr/include/boost/range/detail/empty.hpp
(3171B)
// Boost.Range library // // Copyright Thorsten Ottosen 2003-2004. Use, modification and // distribution is subject to the Boost Software License, Version // 1.0. (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) // // For more information, see http://www.boost.org/libs/range/ // #ifndef BOOST_RANGE_DETAIL_EMPTY_HPP #define BOOST_RANGE_DETAIL_EMPTY_HPP #include <boost/range/detail/common.hpp> namespace boost { namespace range_detail { template< typename T > struct range_empty; ////////////////////////////////////////////////////////////////////// // default ////////////////////////////////////////////////////////////////////// template<> struct range_empty<std_container_> { template< typename C > static bool fun( C& c ) { return c.empty(); }; }; ////////////////////////////////////////////////////////////////////// // pair ////////////////////////////////////////////////////////////////////// template<> struct range_empty<std_pair_> { template< typename P > static bool fun( const P& p ) { return p.first == p.second; } }; ////////////////////////////////////////////////////////////////////// // array ////////////////////////////////////////////////////////////////////// template<> struct range_empty<array_> { template< typename T, std::size_t sz > static bool fun( T BOOST_ARRAY_REF[sz] ) { if( boost_range_array == 0 ) return true; return false; } }; ////////////////////////////////////////////////////////////////////// // string ////////////////////////////////////////////////////////////////////// template<> struct range_empty<char_ptr_> { static bool fun( const char* s ) { return s == 0 || s[0] == 0; } }; template<> struct range_empty<const_char_ptr_> { static bool fun( const char* s ) { return s == 0 || s[0] == 0; } }; template<> struct range_empty<wchar_t_ptr_> { static bool fun( const wchar_t* s ) { return s == 0 || s[0] == 0; } }; template<> struct range_empty<const_wchar_t_ptr_> { static bool fun( const wchar_t* s ) { return s == 0 || s[0] == 0; } }; } // namespace 'range_detail' template< typename C > inline bool empty( const C& c ) { return range_detail::range_empty< BOOST_RANGE_DEDUCED_TYPENAME range_detail::range<C>::type >::fun( c ); } } // namespace 'boost' #endif
Save
cmd:
run