import repository from arizona
[raven.git] / tools / xsugar / pacgroups.xsg
1 GroupName = [a-zA-Z0-9._]+
2 NodeName = [a-zA-Z0-9._]+
3 NL = ((\r\n)|(\r)|(\n))+
4 NLW = ((\r\n)|(\r)|(\n)|(\ ))*
5
6 body : [groupList gl] =  <GROUPS> [groupList gl] </>
7
8 groupList : [group g] [NL] [groupList more] = [group g] [groupList more]
9           : [group g] = [group g]
10           : =
11
12 group : [GroupName name] _ "=" _ [NL] _ [groupContents gc] =
13       <GROUP NAME=[GroupName name]> [groupContents gc] </>      
14
15 groupContents : [groupLine gl] [NL] [groupContents more] = [groupLine gl] [groupContents more]
16               : =
17
18 groupLine : __ [includeContents i] = [includeContents i]
19           : __ [excludeContents i] = [excludeContents i]
20           : __ [intersectContents i] = [intersectContents i]
21
22 includeContents : "INCLUDE" _ " " _ [NodeName n] =
23       <INCLUDE NAME=[NodeName n] />
24
25 excludeContents : "EXCLUDE" _ " " _ [NodeName n] = 
26       <EXCLUDE NAME=[NodeName n] />
27
28 intersectContents : "INTERSECT" _ " " _ [NodeName n] =
29       <INTERSECT NAME=[NodeName n] />