1// Copyright 2009 The RE2 Authors. All Rights Reserved. 2// Use of this source code is governed by a BSD-style 3// license that can be found in the LICENSE file. 4 5// Simplified version of Google's command line flags. 6// Does not support parsing the command line. 7// If you want to do that, see 8// http://code.google.com/p/google-gflags 9 10#ifndef RE2_UTIL_FLAGS_H__ 11#define RE2_UTIL_FLAGS_H__ 12 13#define DEFINE_flag(type, name, deflt, desc) \ 14 namespace re2 { type FLAGS_##name = deflt; } 15 16#define DECLARE_flag(type, name) \ 17 namespace re2 { extern type FLAGS_##name; } 18 19#define DEFINE_bool(name, deflt, desc) DEFINE_flag(bool, name, deflt, desc) 20#define DEFINE_int32(name, deflt, desc) DEFINE_flag(int32, name, deflt, desc) 21#define DEFINE_string(name, deflt, desc) DEFINE_flag(string, name, deflt, desc) 22 23#define DECLARE_bool(name) DECLARE_flag(bool, name) 24#define DECLARE_int32(name) DECLARE_flag(int32, name) 25#define DECLARE_string(name) DECLARE_flag(string, name) 26 27#endif // RE2_UTIL_FLAGS_H__ 28