package org.netbeans.gradle.project.api.config; /** * Defines a reference to an object. This is usually useful to lazily created * values. * * @param <ValueType> the type of the value referenced * * @see ValueMerger */ public interface ValueReference<ValueType> { /** * Returns the (possibly) lazily created value. This method must return * the same object when called multiple times. * * @return the (possibly) lazily created value. This method may return * {@code null} depending on the implementation. */ public ValueType getValue(); }