Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZoltan Ujhelyi2017-09-12 13:46:01 +0000
committerZoltan Ujhelyi2017-09-12 13:46:01 +0000
commit098d9608b0f6cb80f3e97ef9b6c7388b47ba110b (patch)
treecce6ac93fb88fa8303f8cefa9fb0c242762a9ce0
parent9d46a8bd829039736448b6b40c968a6a25974202 (diff)
downloadorg.eclipse.viatra-098d9608b0f6cb80f3e97ef9b6c7388b47ba110b.tar.gz
org.eclipse.viatra-098d9608b0f6cb80f3e97ef9b6c7388b47ba110b.tar.xz
org.eclipse.viatra-098d9608b0f6cb80f3e97ef9b6c7388b47ba110b.zip
[469149] Updated generic LS hints
Change-Id: Ie83d7949b57a5a03a9b13462ed3f879585a1a6c9 Signed-off-by: Zoltan Ujhelyi <ujhelyiz@incquerylabs.com>
-rw-r--r--query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHintOptions.java8
-rw-r--r--query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHints.java4
-rw-r--r--query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/CommonQueryHintOptions.java2
-rw-r--r--query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/QueryHintOption.java2
-rw-r--r--query/plugins/org.eclipse.viatra.query.runtime.rete/src/org/eclipse/viatra/query/runtime/rete/util/ReteHintOptions.java2
5 files changed, 9 insertions, 9 deletions
diff --git a/query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHintOptions.java b/query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHintOptions.java
index afc28256d..e7f806d57 100644
--- a/query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHintOptions.java
+++ b/query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHintOptions.java
@@ -38,23 +38,23 @@ public final class LocalSearchHintOptions {
* @since 1.4
*/
public static final QueryHintOption<ICostFunction> PLANNER_COST_FUNCTION =
- hintOption("PLANNER_COST_FUNCTION", (ICostFunction) new IndexerBasedConstraintCostFunction());
+ hintOption("PLANNER_COST_FUNCTION", new IndexerBasedConstraintCostFunction());
/**
* Predicate to decide whether to flatten specific positive pattern calls {@link IFlattenCallPredicate}
* @since 1.4
*/
public static final QueryHintOption<IFlattenCallPredicate> FLATTEN_CALL_PREDICATE =
- hintOption("FLATTEN_CALL_PREDICATE", (IFlattenCallPredicate) new DontFlattenIncrementalPredicate());
+ hintOption("FLATTEN_CALL_PREDICATE", new DontFlattenIncrementalPredicate());
/**
* A provider of expected adornments {@link IAdornmentProvider}
* @since 1.5
*/
public static final QueryHintOption<IAdornmentProvider> ADORNMENT_PROVIDER =
- hintOption("ADORNMENT_PROVIDER", (IAdornmentProvider)new AllValidAdornments());
+ hintOption("ADORNMENT_PROVIDER", new AllValidAdornments());
// internal helper for conciseness
- private static <T> QueryHintOption<T> hintOption(String hintKeyLocalName, T defaultValue) {
+ private static <T, V extends T> QueryHintOption<T> hintOption(String hintKeyLocalName, V defaultValue) {
return new QueryHintOption<>(LocalSearchHintOptions.class, hintKeyLocalName, defaultValue);
}
}
diff --git a/query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHints.java b/query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHints.java
index e7aa57710..c328e5201 100644
--- a/query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHints.java
+++ b/query/plugins/org.eclipse.viatra.query.runtime.localsearch/src/org/eclipse/viatra/query/runtime/localsearch/matcher/integration/LocalSearchHints.java
@@ -118,8 +118,8 @@ public final class LocalSearchHints implements IMatcherCapability {
LocalSearchHints result = new LocalSearchHints();
result.useBase = true; // Should be unused; but a false value might cause surprises as an engine-default hint
result.rowCount = 4;
- result.costFunction = new VariableBindingBasedCostFunction();
- result.flattenCallPredicate = new NeverFlattenCallPredicate();
+ result.costFunction = new IndexerBasedConstraintCostFunction();
+ result.flattenCallPredicate = FLATTEN_CALL_PREDICATE.getDefaultValue();
result.adornmentProvider = ADORNMENT_PROVIDER.getDefaultValue();
result.backendFactory = LocalSearchGenericBackendFactory.INSTANCE;
return result;
diff --git a/query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/CommonQueryHintOptions.java b/query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/CommonQueryHintOptions.java
index d26e4a73e..c8d83435e 100644
--- a/query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/CommonQueryHintOptions.java
+++ b/query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/CommonQueryHintOptions.java
@@ -28,7 +28,7 @@ public final class CommonQueryHintOptions {
// internal helper for conciseness
private static <T> QueryHintOption<T> hintOption(String hintKeyLocalName, T defaultValue) {
- return new QueryHintOption<T>(CommonQueryHintOptions.class, hintKeyLocalName, defaultValue);
+ return new QueryHintOption<>(CommonQueryHintOptions.class, hintKeyLocalName, defaultValue);
}
}
diff --git a/query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/QueryHintOption.java b/query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/QueryHintOption.java
index 52a5b8988..c5607c7e5 100644
--- a/query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/QueryHintOption.java
+++ b/query/plugins/org.eclipse.viatra.query.runtime.matchers/src/org/eclipse/viatra/query/runtime/matchers/backend/QueryHintOption.java
@@ -37,7 +37,7 @@ public class QueryHintOption<HintValue> {
* This is the recommended constructor for hint options defined as static fields within an enclosing class.
* Combines the qualified name of the hint from the (qualified) name of the enclosing class and a local name (unique within that class).
*/
- public QueryHintOption(Class<?> optionNamespace, String optionLocalName, HintValue defaultValue) {
+ public <T extends HintValue> QueryHintOption(Class<?> optionNamespace, String optionLocalName, T defaultValue) {
this(String.format("%s#%s", optionNamespace.getName(), optionLocalName), defaultValue);
}
diff --git a/query/plugins/org.eclipse.viatra.query.runtime.rete/src/org/eclipse/viatra/query/runtime/rete/util/ReteHintOptions.java b/query/plugins/org.eclipse.viatra.query.runtime.rete/src/org/eclipse/viatra/query/runtime/rete/util/ReteHintOptions.java
index 48457c686..5af1ea84b 100644
--- a/query/plugins/org.eclipse.viatra.query.runtime.rete/src/org/eclipse/viatra/query/runtime/rete/util/ReteHintOptions.java
+++ b/query/plugins/org.eclipse.viatra.query.runtime.rete/src/org/eclipse/viatra/query/runtime/rete/util/ReteHintOptions.java
@@ -58,6 +58,6 @@ public final class ReteHintOptions {
// internal helper for conciseness
private static <T> QueryHintOption<T> hintOption(String hintKeyLocalName, T defaultValue) {
- return new QueryHintOption<T>(ReteHintOptions.class, hintKeyLocalName, defaultValue);
+ return new QueryHintOption<>(ReteHintOptions.class, hintKeyLocalName, defaultValue);
}
}

Back to the top