aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/frontend/src/language/problem.grammar
diff options
context:
space:
mode:
Diffstat (limited to 'subprojects/frontend/src/language/problem.grammar')
-rw-r--r--subprojects/frontend/src/language/problem.grammar13
1 files changed, 8 insertions, 5 deletions
diff --git a/subprojects/frontend/src/language/problem.grammar b/subprojects/frontend/src/language/problem.grammar
index ce3baa02..b08a9c36 100644
--- a/subprojects/frontend/src/language/problem.grammar
+++ b/subprojects/frontend/src/language/problem.grammar
@@ -28,7 +28,7 @@ statement {
28 (":" Expr)? "." 28 (":" Expr)? "."
29 } | 29 } |
30 ProblemDeclaration { 30 ProblemDeclaration {
31 kw<"problem"> QualifiedName "." 31 (ckw<"module"> | kw<"problem">) QualifiedName "."
32 } | 32 } |
33 ClassDefinition { 33 ClassDefinition {
34 kw<"abstract">? kw<"class"> RelationName 34 kw<"abstract">? kw<"class"> RelationName
@@ -37,7 +37,7 @@ statement {
37 } | 37 } |
38 EnumDefinition { 38 EnumDefinition {
39 kw<"enum"> RelationName 39 kw<"enum"> RelationName
40 (EnumBody { "{" sep<",", IndividualNodeName> "}" } | ".") 40 (EnumBody { "{" sep<",", AtomNodeName> "}" } | ".")
41 } | 41 } |
42 PredicateDefinition { 42 PredicateDefinition {
43 ( 43 (
@@ -56,8 +56,11 @@ statement {
56 // RuleName ParameterList<Parameter>? 56 // RuleName ParameterList<Parameter>?
57 // RuleBody { ":" sep<OrOp, Conjunction> "==>" sep<OrOp, Consequent> "." } 57 // RuleBody { ":" sep<OrOp, Conjunction> "==>" sep<OrOp, Consequent> "." }
58 //} | 58 //} |
59 IndividualDeclaration { 59 AtomDeclaration {
60 kw<"indiv"> sep<",", IndividualNodeName> "." 60 ckw<"atom"> sep<",", AtomNodeName> "."
61 } |
62 NodeDeclaration {
63 (ckw<"node"> | ckw<"multi">) sep<",", NodeName> "."
61 } | 64 } |
62 ScopeDeclaration { 65 ScopeDeclaration {
63 kw<"scope"> sep<",", ScopeElement> "." 66 kw<"scope"> sep<",", ScopeElement> "."
@@ -161,7 +164,7 @@ RelationName { QualifiedName ~name }
161 164
162//RuleName { QualifiedName } 165//RuleName { QualifiedName }
163 166
164IndividualNodeName { QualifiedName } 167AtomNodeName { QualifiedName }
165 168
166VariableName[@dynamicPrecedence=10] { QualifiedName ~name } 169VariableName[@dynamicPrecedence=10] { QualifiedName ~name }
167 170