Class FeatureType<F extends Feature<F>>
- java.lang.Object
-
- org.inferred.freebuilder.processor.source.feature.FeatureType<F>
-
public abstract class FeatureType<F extends Feature<F>> extends java.lang.ObjectAlgorithm to select the correct instance of a given feature type for a processing environment, and the default to use in tests when an explicit value has not been registered for that feature.Each feature class should expose a single
FeatureTypeconstant for the user to pass toSourceBuilder.feature(FeatureType), e.g.SourceLevel.SOURCE_LEVEL.
-
-
Constructor Summary
Constructors Constructor Description FeatureType()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected abstract FforEnvironment(javax.annotation.processing.ProcessingEnvironment env, FeatureSet features)Returns the instance ofFto use inenv.protected abstract FtestDefault(FeatureSet features)Returns the instance ofFto use by default in tests.protected java.lang.Class<F>type()
-
-
-
Method Detail
-
testDefault
protected abstract F testDefault(FeatureSet features)
Returns the instance ofFto use by default in tests.
-
forEnvironment
protected abstract F forEnvironment(javax.annotation.processing.ProcessingEnvironment env, FeatureSet features)
Returns the instance ofFto use inenv.
-
type
protected java.lang.Class<F> type()
-
-