aboutsummaryrefslogtreecommitdiffstats
path: root/subprojects/language/src/main/java/tools/refinery/language/serializer/ProblemTransientValueService.java
diff options
context:
space:
mode:
authorLibravatar Kristóf Marussy <marussy@mit.bme.hu>2024-02-19 00:44:05 +0100
committerLibravatar GitHub <noreply@github.com>2024-02-19 00:44:05 +0100
commit201c3da912aeaab8a3f51b84198b35c7936d0446 (patch)
treee427986134c41b540b10b9a9576f5a1788d8fbed /subprojects/language/src/main/java/tools/refinery/language/serializer/ProblemTransientValueService.java
parentchore(deps): bump dependencies (diff)
parentdocs: update README (diff)
downloadrefinery-201c3da912aeaab8a3f51b84198b35c7936d0446.tar.gz
refinery-201c3da912aeaab8a3f51b84198b35c7936d0446.tar.zst
refinery-201c3da912aeaab8a3f51b84198b35c7936d0446.zip
Merge pull request #53 from kris7t/imports
Module and import resolution support
Diffstat (limited to 'subprojects/language/src/main/java/tools/refinery/language/serializer/ProblemTransientValueService.java')
-rw-r--r--subprojects/language/src/main/java/tools/refinery/language/serializer/ProblemTransientValueService.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/subprojects/language/src/main/java/tools/refinery/language/serializer/ProblemTransientValueService.java b/subprojects/language/src/main/java/tools/refinery/language/serializer/ProblemTransientValueService.java
new file mode 100644
index 00000000..269e1243
--- /dev/null
+++ b/subprojects/language/src/main/java/tools/refinery/language/serializer/ProblemTransientValueService.java
@@ -0,0 +1,24 @@
1/*
2 * SPDX-FileCopyrightText: 2024 The Refinery Authors <https://refinery.tools/>
3 *
4 * SPDX-License-Identifier: EPL-2.0
5 */
6package tools.refinery.language.serializer;
7
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.emf.ecore.EStructuralFeature;
10import org.eclipse.xtext.parsetree.reconstr.impl.DefaultTransientValueService;
11import tools.refinery.language.model.problem.Problem;
12import tools.refinery.language.model.problem.ProblemPackage;
13import tools.refinery.language.utils.ProblemUtil;
14
15public class ProblemTransientValueService extends DefaultTransientValueService {
16 @Override
17 public boolean isTransient(EObject owner, EStructuralFeature feature, int index) {
18 if (owner instanceof Problem problem && feature == ProblemPackage.Literals.PROBLEM__KIND) {
19 return problem.getName() == null && problem.getKind() == ProblemUtil.getDefaultModuleKind(problem) &&
20 !problem.isExplicitKind();
21 }
22 return super.isTransient(owner, feature, index);
23 }
24}