doc / ch.tutteli.atrium.domain.creating.feature.extract / FeatureExtractor / CreatorLike

CreatorLike

interface CreatorLike<TSubject, T, A : BaseAssertionPlant<T, A>, C : BaseCollectingAssertionPlant<T, A, C>> (source)

Final step of the sophisticated safe feature extraction where one can define extractAndAssertIt for the extracted feature or use extract to get the assertion plant.

Properties

featureRepresentation

abstract val featureRepresentation: Translatable

The previously chosen feature representation.

parameterObject

abstract val parameterObject: ParameterObject<TSubject, T>

The previously created ParameterObject.

Functions

extract

abstract fun extract(): A

Extracts a feature with the help of the specified parameterObject.featureExtraction if it parameterObject.canBeExtracted and returns an assertion plant for it.

extractAndAssertIt

abstract fun extractAndAssertIt(assertionCreator: C.() -> Unit): Assertion

Extracts a feature with the help of the specified parameterObject.featureExtraction if it parameterObject.canBeExtracted and uses the given assertionCreator to create feature assertions.

Inheritors

Creator

interface Creator<TSubject, T : Any> : CreatorLike<TSubject, T, AssertionPlant<T>, CollectingAssertionPlant<T>>

Final step of the sophisticated safe feature extraction where one can define extractAndAssertIt for the extracted feature or use extract to get a feature AssertionPlant.

CreatorNullable

interface CreatorNullable<TSubject, T> : CreatorLike<TSubject, T, AssertionPlantNullable<T>, CollectingAssertionPlantNullable<T>>

Final step of the sophisticated safe feature extraction where one can define extractAndAssertIt for the extracted feature or use extract to get a feature AssertionPlantNullable.