Interface IRelationEvaluator


  • public interface IRelationEvaluator
    Implementations of this interface take an arbitrary number of input relations with their contents and compute the tuples of a single output relation.
    Since:
    2.8
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      java.util.Set<Tuple> evaluateRelation​(java.util.List<java.util.Set<Tuple>> inputs)
      The relation evaluator code.
      java.util.List<java.lang.Integer> getInputArities()
      For each input relation that this evaluator requires, this method returns the expected arities of the relations in order.
      int getOutputArity()
      Returns the arity of the output relation that this evaluator computes.
      java.lang.String getShortDescription()
      A textual description of the evaluator.
    • Method Detail

      • getShortDescription

        java.lang.String getShortDescription()
        A textual description of the evaluator. Used only for debug purposes, but must not be null.
      • evaluateRelation

        java.util.Set<Tuple> evaluateRelation​(java.util.List<java.util.Set<Tuple>> inputs)
                                       throws java.lang.Exception
        The relation evaluator code. For performance reasons, it is expected that the returned set is a mutable collection, and the caller must be allowed to actually perform mutations!
        Throws:
        java.lang.Exception
      • getInputArities

        java.util.List<java.lang.Integer> getInputArities()
        For each input relation that this evaluator requires, this method returns the expected arities of the relations in order.
      • getOutputArity

        int getOutputArity()
        Returns the arity of the output relation that this evaluator computes.