@@ -3981,26 +3981,26 @@ ElementsAreArray(Iter first, Iter last) {
3981
3981
}
3982
3982
3983
3983
template <typename T>
3984
- inline internal::ElementsAreArrayMatcher<T> ElementsAreArray (
3985
- const T* pointer, size_t count) {
3984
+ inline auto ElementsAreArray (const T* pointer, size_t count)
3985
+ -> decltype(ElementsAreArray( pointer, pointer + count) ) {
3986
3986
return ElementsAreArray (pointer, pointer + count);
3987
3987
}
3988
3988
3989
3989
template <typename T, size_t N>
3990
- inline internal::ElementsAreArrayMatcher<T> ElementsAreArray (
3991
- const T (& array)[N] ) {
3990
+ inline auto ElementsAreArray (const T (&array)[N])
3991
+ -> decltype(ElementsAreArray( array, N) ) {
3992
3992
return ElementsAreArray (array, N);
3993
3993
}
3994
3994
3995
3995
template <typename Container>
3996
- inline internal::ElementsAreArrayMatcher< typename Container::value_type>
3997
- ElementsAreArray (const Container& container) {
3996
+ inline auto ElementsAreArray ( const Container& container)
3997
+ -> decltype( ElementsAreArray(container.begin(), container.end()) ) {
3998
3998
return ElementsAreArray (container.begin (), container.end ());
3999
3999
}
4000
4000
4001
4001
template <typename T>
4002
- inline internal::ElementsAreArrayMatcher <T>
4003
- ElementsAreArray (::std::initializer_list<T> xs) {
4002
+ inline auto ElementsAreArray (::std::initializer_list <T> xs)
4003
+ -> decltype( ElementsAreArray(xs.begin(), xs.end()) ) {
4004
4004
return ElementsAreArray (xs.begin (), xs.end ());
4005
4005
}
4006
4006
0 commit comments