xref: /aosp_15_r20/external/libcxx/test/std/re/re.traits/length.pass.cpp (revision 58b9f456b02922dfdb1fad8a988d5fd8765ecb80)
1*58b9f456SAndroid Build Coastguard Worker // -*- C++ -*-
2*58b9f456SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===//
3*58b9f456SAndroid Build Coastguard Worker //
4*58b9f456SAndroid Build Coastguard Worker //                     The LLVM Compiler Infrastructure
5*58b9f456SAndroid Build Coastguard Worker //
6*58b9f456SAndroid Build Coastguard Worker // This file is dual licensed under the MIT and the University of Illinois Open
7*58b9f456SAndroid Build Coastguard Worker // Source Licenses. See LICENSE.TXT for details.
8*58b9f456SAndroid Build Coastguard Worker //
9*58b9f456SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===//
10*58b9f456SAndroid Build Coastguard Worker 
11*58b9f456SAndroid Build Coastguard Worker // <regex>
12*58b9f456SAndroid Build Coastguard Worker 
13*58b9f456SAndroid Build Coastguard Worker // template <class charT> struct regex_traits;
14*58b9f456SAndroid Build Coastguard Worker 
15*58b9f456SAndroid Build Coastguard Worker // static std::size_t length(const char_type* p);
16*58b9f456SAndroid Build Coastguard Worker 
17*58b9f456SAndroid Build Coastguard Worker #include <regex>
18*58b9f456SAndroid Build Coastguard Worker #include <cassert>
19*58b9f456SAndroid Build Coastguard Worker #include "test_macros.h"
20*58b9f456SAndroid Build Coastguard Worker 
main()21*58b9f456SAndroid Build Coastguard Worker int main()
22*58b9f456SAndroid Build Coastguard Worker {
23*58b9f456SAndroid Build Coastguard Worker     assert(std::regex_traits<char>::length("") == 0);
24*58b9f456SAndroid Build Coastguard Worker     assert(std::regex_traits<char>::length("1") == 1);
25*58b9f456SAndroid Build Coastguard Worker     assert(std::regex_traits<char>::length("12") == 2);
26*58b9f456SAndroid Build Coastguard Worker     assert(std::regex_traits<char>::length("123") == 3);
27*58b9f456SAndroid Build Coastguard Worker 
28*58b9f456SAndroid Build Coastguard Worker     assert(std::regex_traits<wchar_t>::length(L"") == 0);
29*58b9f456SAndroid Build Coastguard Worker     assert(std::regex_traits<wchar_t>::length(L"1") == 1);
30*58b9f456SAndroid Build Coastguard Worker     assert(std::regex_traits<wchar_t>::length(L"12") == 2);
31*58b9f456SAndroid Build Coastguard Worker     assert(std::regex_traits<wchar_t>::length(L"123") == 3);
32*58b9f456SAndroid Build Coastguard Worker }
33