xref: /llvm-project/clang-tools-extra/test/clang-tidy/checkers/boost/use-ranges-pipe.cpp (revision 87ca6386f9389f9d929d660e37701590092cefab)
1*87ca6386SNathan James // RUN: %check_clang_tidy -std=c++14 %s boost-use-ranges %t -check-suffixes=,PIPE \
2*87ca6386SNathan James // RUN:   -config="{CheckOptions: { \
3*87ca6386SNathan James // RUN:     boost-use-ranges.UseReversePipe: true }}" -- -I %S/Inputs/use-ranges/
4*87ca6386SNathan James // RUN: %check_clang_tidy -std=c++14 %s boost-use-ranges %t -check-suffixes=,NOPIPE  -- -I %S/Inputs/use-ranges/
5*87ca6386SNathan James 
6*87ca6386SNathan James // CHECK-FIXES: #include <boost/algorithm/cxx11/is_sorted.hpp>
7*87ca6386SNathan James // CHECK-FIXES: #include <boost/range/adaptor/reversed.hpp>
8*87ca6386SNathan James 
9*87ca6386SNathan James #include "fake_std.h"
10*87ca6386SNathan James 
11*87ca6386SNathan James void stdLib() {
12*87ca6386SNathan James   std::vector<int> I;
13*87ca6386SNathan James   std::is_sorted_until(I.rbegin(), I.rend());
14*87ca6386SNathan James   // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use a boost version of this algorithm
15*87ca6386SNathan James   // CHECK-FIXES-NOPIPE: boost::algorithm::is_sorted_until(boost::adaptors::reverse(I));
16*87ca6386SNathan James   // CHECK-FIXES-PIPE: boost::algorithm::is_sorted_until(I | boost::adaptors::reversed);
17*87ca6386SNathan James 
18*87ca6386SNathan James }
19