diff options
| author | Howard Hinnant <hhinnant@apple.com> | 2010-08-16 20:21:16 +0000 |
|---|---|---|
| committer | Howard Hinnant <hhinnant@apple.com> | 2010-08-16 20:21:16 +0000 |
| commit | 2bf1fd99b1f75b6cdf6c2d56ce2490db7328dfd3 (patch) | |
| tree | 4549c64157b71d467a8a7e5685b5f90a7f77c23a /libcxx/test/re/re.iter/re.regiter/re.regiter.deref/deref.pass.cpp | |
| parent | 7e2f4ce4398be7c946d978ae38061f9467ae811f (diff) | |
| download | bcm5719-llvm-2bf1fd99b1f75b6cdf6c2d56ce2490db7328dfd3.tar.gz bcm5719-llvm-2bf1fd99b1f75b6cdf6c2d56ce2490db7328dfd3.zip | |
[re.regiter]
llvm-svn: 111178
Diffstat (limited to 'libcxx/test/re/re.iter/re.regiter/re.regiter.deref/deref.pass.cpp')
| -rw-r--r-- | libcxx/test/re/re.iter/re.regiter/re.regiter.deref/deref.pass.cpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/libcxx/test/re/re.iter/re.regiter/re.regiter.deref/deref.pass.cpp b/libcxx/test/re/re.iter/re.regiter/re.regiter.deref/deref.pass.cpp new file mode 100644 index 00000000000..8ea1c587566 --- /dev/null +++ b/libcxx/test/re/re.iter/re.regiter/re.regiter.deref/deref.pass.cpp @@ -0,0 +1,42 @@ +//===----------------------------------------------------------------------===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +// <regex> + +// class regex_iterator<BidirectionalIterator, charT, traits> + +// const value_type& operator*() const; + +#include <regex> +#include <cassert> + +int main() +{ + { + std::regex phone_numbers("\\d{3}-\\d{4}"); + const char phone_book[] = "555-1234, 555-2345, 555-3456"; + std::cregex_iterator i(std::begin(phone_book), std::end(phone_book), phone_numbers); + assert(i != std::cregex_iterator()); + assert((*i).size() == 1); + assert((*i).position() == 0); + assert((*i).str() == "555-1234"); + ++i; + assert(i != std::cregex_iterator()); + assert((*i).size() == 1); + assert((*i).position() == 10); + assert((*i).str() == "555-2345"); + ++i; + assert(i != std::cregex_iterator()); + assert((*i).size() == 1); + assert((*i).position() == 20); + assert((*i).str() == "555-3456"); + ++i; + assert(i == std::cregex_iterator()); + } +}
\ No newline at end of file |

