Class LogicalOpJoin

java.lang.Object
se.liu.ida.hefquin.engine.queryplan.logical.impl.BaseForLogicalOps
se.liu.ida.hefquin.engine.queryplan.logical.impl.LogicalOpJoin
All Implemented Interfaces:
QueryPlanOperator, BinaryLogicalOp, LogicalOperator

public class LogicalOpJoin extends BaseForLogicalOps implements BinaryLogicalOp
  • Field Details

    • singletonWithoutReduction

      protected static final LogicalOpJoin singletonWithoutReduction
    • singletonThatMayReduce

      protected static final LogicalOpJoin singletonThatMayReduce
  • Constructor Details

    • LogicalOpJoin

      protected LogicalOpJoin(boolean mayReduce)
  • Method Details

    • getInstance

      public static LogicalOpJoin getInstance(boolean mayReduce)
    • getInstance

      public static LogicalOpJoin getInstance()
      Returns the singleton instance of LogicalOpJoin that does not reduce duplicates.

      This is equivalent to calling getInstance(boolean) with the argument false.

      Returns:
      the singleton instance that does not reduce duplicates
    • getExpectedVariables

      public ExpectedVariables getExpectedVariables(ExpectedVariables... inputVars)
      Description copied from interface: QueryPlanOperator
      Returns the variables that can be expected in the solution mappings produced by this operator in the case that the input(s) to this operator contain solutions mappings with the given set(s) of variables. The number of ExpectedVariables objects passed to this method must be in line with the degree of this operator (e.g., for a unary operator, exactly one such object must be passed).
      Specified by:
      getExpectedVariables in interface QueryPlanOperator
    • visit

      public void visit(LogicalPlanVisitor visitor)
      Specified by:
      visit in interface LogicalOperator
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object