Mercurial > hg > truffle
changeset 19237:9c921eb127ba
SuitesProvider: use inner supplier classes.
author | Josef Eisl <josef.eisl@jku.at> |
---|---|
date | Tue, 10 Feb 2015 15:18:32 +0100 |
parents | ba6ce79ad299 |
children | 5ff79efdd040 |
files | graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSuitesProvider.java graal/com.oracle.graal.java/src/com/oracle/graal/java/DefaultSuitesProvider.java |
diffstat | 2 files changed, 47 insertions(+), 18 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSuitesProvider.java Tue Feb 10 14:44:55 2015 +0100 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/meta/HotSpotSuitesProvider.java Tue Feb 10 15:18:32 2015 +0100 @@ -41,30 +41,44 @@ /** * HotSpot implementation of {@link SuitesProvider}. */ -public class HotSpotSuitesProvider implements SuitesProvider, OptionSupplier<Suites> { - - private static final long serialVersionUID = -5755004498526945687L; +public class HotSpotSuitesProvider implements SuitesProvider { protected final DerivedOptionValue<Suites> defaultSuites; protected final PhaseSuite<HighTierContext> defaultGraphBuilderSuite; private final DerivedOptionValue<LowLevelSuites> defaultLowLevelSuites; protected final HotSpotGraalRuntimeProvider runtime; + private class SuitesSupplier implements OptionSupplier<Suites> { + + private static final long serialVersionUID = -3444304453553320390L; + + public Suites get() { + return createSuites(); + } + + } + + private class LowLevelSuitesSupplier implements OptionSupplier<LowLevelSuites> { + + private static final long serialVersionUID = -1558586374095874299L; + + public LowLevelSuites get() { + return createLowLevelSuites(); + } + + } + public HotSpotSuitesProvider(HotSpotGraalRuntimeProvider runtime) { this.runtime = runtime; this.defaultGraphBuilderSuite = createGraphBuilderSuite(); - this.defaultSuites = new DerivedOptionValue<>(this::get); - this.defaultLowLevelSuites = new DerivedOptionValue<>(this::createLowLevelSuites); + this.defaultSuites = new DerivedOptionValue<>(new SuitesSupplier()); + this.defaultLowLevelSuites = new DerivedOptionValue<>(new LowLevelSuitesSupplier()); } public Suites getDefaultSuites() { return defaultSuites.getValue(); } - public Suites get() { - return createSuites(); - } - public PhaseSuite<HighTierContext> getDefaultGraphBuilderSuite() { return defaultGraphBuilderSuite; }
--- a/graal/com.oracle.graal.java/src/com/oracle/graal/java/DefaultSuitesProvider.java Tue Feb 10 14:44:55 2015 +0100 +++ b/graal/com.oracle.graal.java/src/com/oracle/graal/java/DefaultSuitesProvider.java Tue Feb 10 15:18:32 2015 +0100 @@ -22,33 +22,48 @@ */ package com.oracle.graal.java; -import java.util.function.*; - import com.oracle.graal.lir.phases.*; import com.oracle.graal.options.*; +import com.oracle.graal.options.DerivedOptionValue.OptionSupplier; import com.oracle.graal.phases.*; import com.oracle.graal.phases.tiers.*; -public class DefaultSuitesProvider implements SuitesProvider, Supplier<Suites> { +public class DefaultSuitesProvider implements SuitesProvider { private final DerivedOptionValue<Suites> defaultSuites; private final PhaseSuite<HighTierContext> defaultGraphBuilderSuite; private final DerivedOptionValue<LowLevelSuites> defaultLowLevelSuites; + private class SuitesSupplier implements OptionSupplier<Suites> { + + private static final long serialVersionUID = 2677805381215454728L; + + public Suites get() { + return createSuites(); + } + + } + + private class LowLevelSuitesSupplier implements OptionSupplier<LowLevelSuites> { + + private static final long serialVersionUID = 312070237227476252L; + + public LowLevelSuites get() { + return createLowLevelSuites(); + } + + } + public DefaultSuitesProvider() { this.defaultGraphBuilderSuite = createGraphBuilderSuite(); - this.defaultSuites = new DerivedOptionValue<>(this::createSuites); - this.defaultLowLevelSuites = new DerivedOptionValue<>(this::createLowLevelSuites); + this.defaultSuites = new DerivedOptionValue<>(new SuitesSupplier()); + this.defaultLowLevelSuites = new DerivedOptionValue<>(new LowLevelSuitesSupplier()); } public Suites getDefaultSuites() { return defaultSuites.getValue(); } - public Suites get() { - return createSuites(); - } - public Suites createSuites() { return Suites.createDefaultSuites(); }