summaryrefslogtreecommitdiffstats
path: root/chrome/browser/policy/policy_path_parser.h
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/policy/policy_path_parser.h')
-rw-r--r--chrome/browser/policy/policy_path_parser.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/chrome/browser/policy/policy_path_parser.h b/chrome/browser/policy/policy_path_parser.h
index 5bf0345..c0d4c22 100644
--- a/chrome/browser/policy/policy_path_parser.h
+++ b/chrome/browser/policy/policy_path_parser.h
@@ -7,12 +7,31 @@
#include <string>
+#include "base/bind.h"
#include "base/files/file_path.h"
namespace policy {
namespace path_parser {
+namespace internal {
+
+typedef bool (*GetValueFuncPtr)(base::FilePath::StringType*);
+
+struct VariableNameAndValueCallback {
+ const base::FilePath::CharType* name;
+ const GetValueFuncPtr value_func_ptr;
+};
+
+// Different set of variables are supported in each platform (see below). Hence
+// this table is filled in with different elements in each platform.
+extern const VariableNameAndValueCallback kVariableNameAndValueCallbacks[];
+
+// Since the number of elements in the table could vary for each platform, this
+// variable is used to keep track of it.
+extern const int kNoOfVariables;
+}
+
// This function is used to expand the variables in policy strings that
// represent paths. The set of supported variables differs between platforms
// but generally covers most standard locations that might be needed in the