| 57 | inline constexpr PhoneNumber phone_number; |
| 58 | |
| 59 | void sample2() |
| 60 | { |
| 61 | using namespace matchit; |
| 62 | |
| 63 | using namespace std::literals; |
| 64 | // auto const s = "match@it"sv; |
| 65 | auto const s = "415123456"sv; |
| 66 | Id<std::string_view> address, domain; |
| 67 | match(s)( |
| 68 | pattern | app(email, some(ds(address, domain))) = |
| 69 | [&] |
| 70 | { std::cout << "got an email"; }, |
| 71 | pattern | app(phone_number, some(ds("415", _, _))) = |
| 72 | [&] |
| 73 | { std::cout << "got a San Francisco phone number"; } |
| 74 | // ˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆˆ extractor pattern |
| 75 | ); |
| 76 | std::cout << std::endl; |
| 77 | } |
| 78 | |
| 79 | int32_t main() |
| 80 | { |