summaryrefslogtreecommitdiffabout
path: root/tests/gcf1.conf
authorSergey Poznyakoff <gray@gnu.org.ua>2011-05-03 14:49:29 (GMT)
committer Sergey Poznyakoff <gray@gnu.org.ua>2011-05-03 18:23:21 (GMT)
commit3d679b3df641f59fb81ca1651799f4e2965ed67e (patch) (unidiff)
tree5a614ee25cff44d015ee9e6f6920e2ba19379bba /tests/gcf1.conf
parent24ec67c9f6375d34d88e79981ed8abbe15a78169 (diff)
downloadgrecs-3d679b3df641f59fb81ca1651799f4e2965ed67e.tar.gz
grecs-3d679b3df641f59fb81ca1651799f4e2965ed67e.tar.bz2
Switch to the two-layer model. Add testsuite.
The configuration file parser creates a syntax tree. This step does not require any knowledge about which keywords are allowed. The user can then either use that tree directly, or post-process it using parser tables. The latter approach is equivalent to previous versions of grecs.
Diffstat (limited to 'tests/gcf1.conf') (more/less context) (show whitespace changes)
-rw-r--r--tests/gcf1.conf54
1 files changed, 54 insertions, 0 deletions
diff --git a/tests/gcf1.conf b/tests/gcf1.conf
new file mode 100644
index 0000000..991fb9b
--- a/dev/null
+++ b/tests/gcf1.conf
@@ -0,0 +1,54 @@
1# This file is part of grecs - Gray's Extensible Configuration System
2# Copyright (C) 2007, 2009-2011 Sergey Poznyakoff
3#
4# Grecs is free software; you can redistribute it and/or modify
5# it under the terms of the GNU General Public License as published by
6# the Free Software Foundation; either version 3, or (at your option)
7# any later version.
8#
9# Grecs is distributed in the hope that it will be useful,
10# but WITHOUT ANY WARRANTY; without even the implied warranty of
11# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12# GNU General Public License for more details.
13#
14# You should have received a copy of the GNU General Public License
15# along with Grecs. If not, see <http://www.gnu.org/licenses/>.
16
17/* Scalar variable.
18*/
19scalar yes;
20
21// List variable.
22listvar ("a", 2, "b", "c");
23
24# Compound value.
25compound stmt 2 foo;
26
27mailbox {
28 mailbox-pattern "maildir:/var/mail;type=index;param=2;user=${user}";
29 mailbox-type "maildir";
30};
31
32logging {
33 syslog yes;
34 facility mail;
35}
36
37program "foo" {
38 logging {
39 syslog yes;
40 facility local1;
41 }
42 scalar no;
43}
44
45program "bar" {
46 logging {
47 syslog no;
48 facility local2;
49 tag "baz";
50 }; # Note: semicolon after closing brace is optional.
51 scalar 25;
52}
53
54 \ No newline at end of file

Return to:

Send suggestions and report system problems to the System administrator.