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