Interface RelWriter

    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      RelWriter done​(RelNode node)
      Writes the completed explanation.
      void explain​(RelNode rel, java.util.List<Pair<java.lang.String,​java.lang.Object>> valueList)
      Prints an explanation of a node, with a list of (term, value) pairs.
      SqlExplainLevel getDetailLevel()  
      default RelWriter input​(java.lang.String term, RelNode input)
      Adds an input to the explanation of the current node.
      RelWriter item​(java.lang.String term, java.lang.Object value)
      Adds an attribute to the explanation of the current node.
      default RelWriter itemIf​(java.lang.String term, java.lang.Object value, boolean condition)
      Adds an input to the explanation of the current node, if a condition holds.
      default boolean nest()
      Returns whether the writer prefers nested values.
    • Method Detail

      • getDetailLevel

        SqlExplainLevel getDetailLevel()
        Returns:
        detail level at which plan should be generated
      • input

        default RelWriter input​(java.lang.String term,
                                RelNode input)
        Adds an input to the explanation of the current node.
        Parameters:
        term - Term for input, e.g. "left" or "input #1".
        input - Input relational expression
      • item

        RelWriter item​(java.lang.String term,
                       java.lang.Object value)
        Adds an attribute to the explanation of the current node.
        Parameters:
        term - Term for attribute, e.g. "joinType"
        value - Attribute value
      • itemIf

        default RelWriter itemIf​(java.lang.String term,
                                 java.lang.Object value,
                                 boolean condition)
        Adds an input to the explanation of the current node, if a condition holds.
      • nest

        default boolean nest()
        Returns whether the writer prefers nested values. Traditional explain writers prefer flattened values.