diff options
Diffstat (limited to 'subprojects/generator/src/main/java/tools/refinery')
3 files changed, 16 insertions, 6 deletions
diff --git a/subprojects/generator/src/main/java/tools/refinery/generator/ModelFacade.java b/subprojects/generator/src/main/java/tools/refinery/generator/ModelFacade.java index a00ddc46..eaf60082 100644 --- a/subprojects/generator/src/main/java/tools/refinery/generator/ModelFacade.java +++ b/subprojects/generator/src/main/java/tools/refinery/generator/ModelFacade.java | |||
@@ -6,6 +6,7 @@ | |||
6 | package tools.refinery.generator; | 6 | package tools.refinery.generator; |
7 | 7 | ||
8 | import tools.refinery.language.semantics.ProblemTrace; | 8 | import tools.refinery.language.semantics.ProblemTrace; |
9 | import tools.refinery.logic.AbstractValue; | ||
9 | import tools.refinery.store.model.Model; | 10 | import tools.refinery.store.model.Model; |
10 | import tools.refinery.store.model.ModelStore; | 11 | import tools.refinery.store.model.ModelStore; |
11 | import tools.refinery.store.reasoning.ReasoningAdapter; | 12 | import tools.refinery.store.reasoning.ReasoningAdapter; |
@@ -52,7 +53,8 @@ public abstract class ModelFacade { | |||
52 | return concreteness; | 53 | return concreteness; |
53 | } | 54 | } |
54 | 55 | ||
55 | public <A, C> PartialInterpretation<A, C> getPartialInterpretation(PartialSymbol<A, C> partialSymbol) { | 56 | public <A extends AbstractValue<A, C>, C> PartialInterpretation<A, C> getPartialInterpretation( |
57 | PartialSymbol<A, C> partialSymbol) { | ||
56 | return reasoningAdapter.getPartialInterpretation(concreteness, partialSymbol); | 58 | return reasoningAdapter.getPartialInterpretation(concreteness, partialSymbol); |
57 | } | 59 | } |
58 | } | 60 | } |
diff --git a/subprojects/generator/src/main/java/tools/refinery/generator/ModelGenerator.java b/subprojects/generator/src/main/java/tools/refinery/generator/ModelGenerator.java index 1515dceb..36190b76 100644 --- a/subprojects/generator/src/main/java/tools/refinery/generator/ModelGenerator.java +++ b/subprojects/generator/src/main/java/tools/refinery/generator/ModelGenerator.java | |||
@@ -9,6 +9,7 @@ import com.google.inject.Provider; | |||
9 | import tools.refinery.language.model.problem.Problem; | 9 | import tools.refinery.language.model.problem.Problem; |
10 | import tools.refinery.language.semantics.ProblemTrace; | 10 | import tools.refinery.language.semantics.ProblemTrace; |
11 | import tools.refinery.language.semantics.SolutionSerializer; | 11 | import tools.refinery.language.semantics.SolutionSerializer; |
12 | import tools.refinery.logic.AbstractValue; | ||
12 | import tools.refinery.store.dse.strategy.BestFirstStoreManager; | 13 | import tools.refinery.store.dse.strategy.BestFirstStoreManager; |
13 | import tools.refinery.store.map.Version; | 14 | import tools.refinery.store.map.Version; |
14 | import tools.refinery.store.model.ModelStore; | 15 | import tools.refinery.store.model.ModelStore; |
@@ -24,7 +25,7 @@ public class ModelGenerator extends ModelFacade { | |||
24 | private boolean lastGenerationSuccessful; | 25 | private boolean lastGenerationSuccessful; |
25 | 26 | ||
26 | ModelGenerator(ProblemTrace problemTrace, ModelStore store, ModelSeed modelSeed, | 27 | ModelGenerator(ProblemTrace problemTrace, ModelStore store, ModelSeed modelSeed, |
27 | Provider<SolutionSerializer> solutionSerializerProvider) { | 28 | Provider<SolutionSerializer> solutionSerializerProvider) { |
28 | super(problemTrace, store, modelSeed, Concreteness.CANDIDATE); | 29 | super(problemTrace, store, modelSeed, Concreteness.CANDIDATE); |
29 | this.solutionSerializerProvider = solutionSerializerProvider; | 30 | this.solutionSerializerProvider = solutionSerializerProvider; |
30 | initialVersion = getModel().commit(); | 31 | initialVersion = getModel().commit(); |
@@ -66,7 +67,8 @@ public class ModelGenerator extends ModelFacade { | |||
66 | } | 67 | } |
67 | 68 | ||
68 | @Override | 69 | @Override |
69 | public <A, C> PartialInterpretation<A, C> getPartialInterpretation(PartialSymbol<A, C> partialSymbol) { | 70 | public <A extends AbstractValue<A, C>, C> PartialInterpretation<A, C> getPartialInterpretation( |
71 | PartialSymbol<A, C> partialSymbol) { | ||
70 | checkSuccessfulGeneration(); | 72 | checkSuccessfulGeneration(); |
71 | return super.getPartialInterpretation(partialSymbol); | 73 | return super.getPartialInterpretation(partialSymbol); |
72 | } | 74 | } |
diff --git a/subprojects/generator/src/main/java/tools/refinery/generator/ProblemLoader.java b/subprojects/generator/src/main/java/tools/refinery/generator/ProblemLoader.java index 580a87b6..c76fb7aa 100644 --- a/subprojects/generator/src/main/java/tools/refinery/generator/ProblemLoader.java +++ b/subprojects/generator/src/main/java/tools/refinery/generator/ProblemLoader.java | |||
@@ -12,7 +12,10 @@ import org.eclipse.emf.ecore.resource.Resource; | |||
12 | import org.eclipse.emf.ecore.util.EcoreUtil; | 12 | import org.eclipse.emf.ecore.util.EcoreUtil; |
13 | import org.eclipse.xtext.diagnostics.Severity; | 13 | import org.eclipse.xtext.diagnostics.Severity; |
14 | import org.eclipse.xtext.naming.IQualifiedNameConverter; | 14 | import org.eclipse.xtext.naming.IQualifiedNameConverter; |
15 | import org.eclipse.xtext.resource.*; | 15 | import org.eclipse.xtext.resource.FileExtensionProvider; |
16 | import org.eclipse.xtext.resource.IEObjectDescription; | ||
17 | import org.eclipse.xtext.resource.IResourceFactory; | ||
18 | import org.eclipse.xtext.resource.XtextResourceSet; | ||
16 | import org.eclipse.xtext.scoping.impl.GlobalResourceDescriptionProvider; | 19 | import org.eclipse.xtext.scoping.impl.GlobalResourceDescriptionProvider; |
17 | import org.eclipse.xtext.util.CancelIndicator; | 20 | import org.eclipse.xtext.util.CancelIndicator; |
18 | import org.eclipse.xtext.util.LazyStringInputStream; | 21 | import org.eclipse.xtext.util.LazyStringInputStream; |
@@ -25,7 +28,7 @@ import tools.refinery.language.model.problem.ScopeDeclaration; | |||
25 | import tools.refinery.language.naming.NamingUtil; | 28 | import tools.refinery.language.naming.NamingUtil; |
26 | import tools.refinery.language.resource.ProblemResourceDescriptionStrategy; | 29 | import tools.refinery.language.resource.ProblemResourceDescriptionStrategy; |
27 | import tools.refinery.language.resource.ProblemResourceDescriptionStrategy.ShadowingKey; | 30 | import tools.refinery.language.resource.ProblemResourceDescriptionStrategy.ShadowingKey; |
28 | import tools.refinery.language.scoping.imports.ImportAdapter; | 31 | import tools.refinery.language.scoping.imports.ImportAdapterProvider; |
29 | import tools.refinery.language.scoping.imports.ImportCollector; | 32 | import tools.refinery.language.scoping.imports.ImportCollector; |
30 | import tools.refinery.store.util.CancellationToken; | 33 | import tools.refinery.store.util.CancellationToken; |
31 | 34 | ||
@@ -61,6 +64,9 @@ public class ProblemLoader { | |||
61 | @Inject | 64 | @Inject |
62 | private IQualifiedNameConverter qualifiedNameConverter; | 65 | private IQualifiedNameConverter qualifiedNameConverter; |
63 | 66 | ||
67 | @Inject | ||
68 | private ImportAdapterProvider importAdapterProvider; | ||
69 | |||
64 | private CancellationToken cancellationToken = CancellationToken.NONE; | 70 | private CancellationToken cancellationToken = CancellationToken.NONE; |
65 | 71 | ||
66 | private final List<Path> extraPaths = new ArrayList<>(); | 72 | private final List<Path> extraPaths = new ArrayList<>(); |
@@ -125,7 +131,7 @@ public class ProblemLoader { | |||
125 | 131 | ||
126 | private XtextResourceSet createResourceSet() { | 132 | private XtextResourceSet createResourceSet() { |
127 | var resourceSet = resourceSetProvider.get(); | 133 | var resourceSet = resourceSetProvider.get(); |
128 | var adapter = ImportAdapter.getOrInstall(resourceSet); | 134 | var adapter = importAdapterProvider.getOrInstall(resourceSet); |
129 | adapter.getLibraryPaths().addAll(0, extraPaths); | 135 | adapter.getLibraryPaths().addAll(0, extraPaths); |
130 | return resourceSet; | 136 | return resourceSet; |
131 | } | 137 | } |