10d4c52358a1af421705c54bd8a9fdd8a30558a2eAlexander Gutkin// Copyright 2008 The RE2 Authors.  All Rights Reserved.
20d4c52358a1af421705c54bd8a9fdd8a30558a2eAlexander Gutkin// Use of this source code is governed by a BSD-style
30d4c52358a1af421705c54bd8a9fdd8a30558a2eAlexander Gutkin// license that can be found in the LICENSE file.
40d4c52358a1af421705c54bd8a9fdd8a30558a2eAlexander Gutkin
52ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson#include <re2/re2.h>
62ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson#include <re2/filtered_re2.h>
72ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson#include <stdio.h>
82ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson
92ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodsonusing namespace re2;
102ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson
112ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodsonint main(void) {
122ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson	FilteredRE2 f;
132ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson	int id;
142ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson	f.Add("a.*b.*c", RE2::DefaultOptions, &id);
152ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson	vector<string> v;
162ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson	f.Compile(&v);
172ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson
182ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson	if(RE2::FullMatch("axbyc", "a.*b.*c")) {
192ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson		printf("PASS\n");
202ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson		return 0;
212ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson	}
222ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson	printf("FAIL\n");
232ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson	return 2;
242ee91b4af4353b9e6a9d591c32fedfc58fd4ef35Ian Hodson}
25