xref: /aosp_15_r20/external/regex-re2/testinstall.cc (revision ccdc9c3e24c519bfa4832a66aa2e83a52c19f295)
1*ccdc9c3eSSadaf Ebrahimi // Copyright 2008 The RE2 Authors.  All Rights Reserved.
2*ccdc9c3eSSadaf Ebrahimi // Use of this source code is governed by a BSD-style
3*ccdc9c3eSSadaf Ebrahimi // license that can be found in the LICENSE file.
4*ccdc9c3eSSadaf Ebrahimi 
5*ccdc9c3eSSadaf Ebrahimi #include <re2/re2.h>
6*ccdc9c3eSSadaf Ebrahimi #include <re2/filtered_re2.h>
7*ccdc9c3eSSadaf Ebrahimi #include <stdio.h>
8*ccdc9c3eSSadaf Ebrahimi 
main(void)9*ccdc9c3eSSadaf Ebrahimi int main(void) {
10*ccdc9c3eSSadaf Ebrahimi 	re2::FilteredRE2 f;
11*ccdc9c3eSSadaf Ebrahimi 	int id;
12*ccdc9c3eSSadaf Ebrahimi 	f.Add("a.*b.*c", RE2::DefaultOptions, &id);
13*ccdc9c3eSSadaf Ebrahimi 	std::vector<std::string> v;
14*ccdc9c3eSSadaf Ebrahimi 	f.Compile(&v);
15*ccdc9c3eSSadaf Ebrahimi 	std::vector<int> ids;
16*ccdc9c3eSSadaf Ebrahimi 	f.FirstMatch("abbccc", ids);
17*ccdc9c3eSSadaf Ebrahimi 
18*ccdc9c3eSSadaf Ebrahimi 	if(RE2::FullMatch("axbyc", "a.*b.*c")) {
19*ccdc9c3eSSadaf Ebrahimi 		printf("PASS\n");
20*ccdc9c3eSSadaf Ebrahimi 		return 0;
21*ccdc9c3eSSadaf Ebrahimi 	}
22*ccdc9c3eSSadaf Ebrahimi 	printf("FAIL\n");
23*ccdc9c3eSSadaf Ebrahimi 	return 2;
24*ccdc9c3eSSadaf Ebrahimi }
25