aboutsummaryrefslogtreecommitdiffstats
path: root/language/src/main/java/org/eclipse/viatra/solver
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <marussy@mit.bme.hu>2021-06-28 17:16:56 +0200
committerLibravatar Kristóf Marussy <marussy@mit.bme.hu>2021-06-28 17:16:56 +0200
commit82a2ca3c963e47611d1ba55f6938e7665488fc5a (patch)
tree6913165e6941526730c60f2cd3ed6678c387df44 /language/src/main/java/org/eclipse/viatra/solver
parentAdd scoping tests and simplify implicit nodes (diff)
downloadrefinery-82a2ca3c963e47611d1ba55f6938e7665488fc5a.tar.gz
refinery-82a2ca3c963e47611d1ba55f6938e7665488fc5a.tar.zst
refinery-82a2ca3c963e47611d1ba55f6938e7665488fc5a.zip
Fix real literals
Diffstat (limited to 'language/src/main/java/org/eclipse/viatra/solver')
-rw-r--r--language/src/main/java/org/eclipse/viatra/solver/language/Problem.xtext11
1 files changed, 7 insertions, 4 deletions
diff --git a/language/src/main/java/org/eclipse/viatra/solver/language/Problem.xtext b/language/src/main/java/org/eclipse/viatra/solver/language/Problem.xtext
index 495f50e4..4aeb0acd 100644
--- a/language/src/main/java/org/eclipse/viatra/solver/language/Problem.xtext
+++ b/language/src/main/java/org/eclipse/viatra/solver/language/Problem.xtext
@@ -92,7 +92,7 @@ NodeValueAssertion:
92 node=[Node|QualifiedName] ":" value=Constant "."; 92 node=[Node|QualifiedName] ":" value=Constant ".";
93 93
94Constant: 94Constant:
95 IntConstant | RealConstant | StringConstant; 95 RealConstant | IntConstant | StringConstant;
96 96
97IntConstant: 97IntConstant:
98 intValue=Integer; 98 intValue=Integer;
@@ -133,18 +133,21 @@ QualifiedName hidden():
133 QUOTED_ID | Identifier ("::" Identifier)*; 133 QUOTED_ID | Identifier ("::" Identifier)*;
134 134
135Identifier: 135Identifier:
136 ID | "true" | "false" | "e" | "E"; 136 ID | "true" | "false";
137 137
138Integer returns ecore::EInt hidden(): 138Integer returns ecore::EInt hidden():
139 "-"? INT; 139 "-"? INT;
140 140
141Real returns ecore::EDouble hidden(): 141Real returns ecore::EDouble:
142 "-"? INT ("." INT | ("." INT)? ("e" | "E") ("-" | "+")? INT); 142 "-"? (EXPONENTIAL | INT "." (INT | EXPONENTIAL));
143 143
144@Override 144@Override
145terminal ID: 145terminal ID:
146 ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*; 146 ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
147 147
148terminal EXPONENTIAL:
149 INT ("e" | "E") ("+" | "-")? INT;
150
148@Override 151@Override
149terminal STRING: 152terminal STRING:
150 '"' ('\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\' | '"'))* '"'; 153 '"' ('\\' . /* 'b'|'t'|'n'|'f'|'r'|'u'|'"'|"'"|'\\' */ | !('\\' | '"'))* '"';