Documentation / dataflow-async / com.femastudios.dataflow.async.util / then
Go to reference

then

@JvmOverloads fun <I, O> then(f1: Attribute<I>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, transformer: WorkContext.(I) -> Attribute<O>): RecomputableAttribute<O>

Parameters

flowStrategy - the default FlowStrategy to use. Defaults to FlowStrategy.SYNCHRONOUS

See Also

Attribute.then


@JvmOverloads inline fun <I1, I2, O> then(f1: Attribute<I1>, f2: Attribute<I2>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(I1, I2) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I1, I2, I3, O> then(f1: Attribute<I1>, f2: Attribute<I2>, f3: Attribute<I3>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(I1, I2, I3) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I1, I2, I3, I4, O> then(f1: Attribute<I1>, f2: Attribute<I2>, f3: Attribute<I3>, f4: Attribute<I4>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(I1, I2, I3, I4) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I1, I2, I3, I4, I5, O> then(f1: Attribute<I1>, f2: Attribute<I2>, f3: Attribute<I3>, f4: Attribute<I4>, f5: Attribute<I5>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(I1, I2, I3, I4, I5) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I1, I2, I3, I4, I5, I6, O> then(f1: Attribute<I1>, f2: Attribute<I2>, f3: Attribute<I3>, f4: Attribute<I4>, f5: Attribute<I5>, f6: Attribute<I6>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(I1, I2, I3, I4, I5, I6) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I1, I2, I3, I4, I5, I6, I7, O> then(f1: Attribute<I1>, f2: Attribute<I2>, f3: Attribute<I3>, f4: Attribute<I4>, f5: Attribute<I5>, f6: Attribute<I6>, f7: Attribute<I7>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(I1, I2, I3, I4, I5, I6, I7) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I1, I2, I3, I4, I5, I6, I7, I8, O> then(f1: Attribute<I1>, f2: Attribute<I2>, f3: Attribute<I3>, f4: Attribute<I4>, f5: Attribute<I5>, f6: Attribute<I6>, f7: Attribute<I7>, f8: Attribute<I8>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(I1, I2, I3, I4, I5, I6, I7, I8) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I1, I2, I3, I4, I5, I6, I7, I8, I9, O> then(f1: Attribute<I1>, f2: Attribute<I2>, f3: Attribute<I3>, f4: Attribute<I4>, f5: Attribute<I5>, f6: Attribute<I6>, f7: Attribute<I7>, f8: Attribute<I8>, f9: Attribute<I9>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(I1, I2, I3, I4, I5, I6, I7, I8, I9) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I1, I2, I3, I4, I5, I6, I7, I8, I9, I10, O> then(f1: Attribute<I1>, f2: Attribute<I2>, f3: Attribute<I3>, f4: Attribute<I4>, f5: Attribute<I5>, f6: Attribute<I6>, f7: Attribute<I7>, f8: Attribute<I8>, f9: Attribute<I9>, f10: Attribute<I10>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(I1, I2, I3, I4, I5, I6, I7, I8, I9, I10) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I, O> then(attributes: List<Attribute<I>>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(List<I>) -> Attribute<O>): RecomputableAttribute<O>
@JvmOverloads inline fun <I, O> then(attributes: Array<Attribute<I>>, flowStrategy: FlowStrategy = THEN_DEFAULT_FLOW_STRATEGY, crossinline transformer: WorkContext.(List<I>) -> Attribute<O>): RecomputableAttribute<O>

Returns an Attribute whose value mirrors the Attribute returned by transformer.

When the value of one of the attributes changes, the returned Attribute will change accordingly.

Similar to transform, but transformer returns an Attribute

Parameters

flowStrategy - the default FlowStrategy to use. Defaults to FlowStrategy.SYNCHRONOUS

See Also

Attribute.then