Class CastSimulator

  • All Implemented Interfaces:
    rocks.frieler.kraftsql.testing.engine.ExpressionSimulator

    
    public final class CastSimulator<E extends Engine<E>, T extends Object>
     implements ExpressionSimulator<E, T, Cast<E, T>>
                        

    Simulator for the Cast function.

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private final KClass<out Cast<E, T>> expression
    • Constructor Summary

      Constructors 
      Constructor Description
      CastSimulator()
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      KClass<out Cast<E, T>> getExpression()
      Function1<DataRow, T> simulateExpression(Cast<E, T> expression) Provides a Kotlin simulation of the given Expression to be applied to a DataRow.
      Function1<List<DataRow>, T> simulateAggregation(Cast<E, T> expression) Provides a Kotlin simulation of the given Expression as an aggregation to be applied to multiple DataRows.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • CastSimulator

        CastSimulator()
    • Method Detail

      • simulateExpression

         Function1<DataRow, T> simulateExpression(Cast<E, T> expression)

        Provides a Kotlin simulation of the given Expression to be applied to a DataRow.

        Returns:

        a function that simulates the Expression

      • simulateAggregation

         Function1<List<DataRow>, T> simulateAggregation(Cast<E, T> expression)

        Provides a Kotlin simulation of the given Expression as an aggregation to be applied to multiple DataRows.

        For the Expression to aggregate multiple DataRows, it must either be an rocks.frieler.kraftsql.expressions.Aggregation, one of the groupExpressions or the same must apply to all its sub-expressions.

        Returns:

        a function that simulates the Expression