Class TableScan

    • Field Detail

      • table

        protected final RelOptTable table
        The table definition.
      • hints

        protected final com.google.common.collect.ImmutableList<RelHint> hints
        The table hints.
    • Method Detail

      • getTable

        public RelOptTable getTable()
        Description copied from interface: RelNode
        If this relational expression represents an access to a table, returns that table, otherwise returns null.
        Specified by:
        getTable in interface RelNode
        Overrides:
        getTable in class AbstractRelNode
        Returns:
        If this relational expression represents an access to a table, returns that table, otherwise returns null
      • project

        public RelNode project​(ImmutableBitSet fieldsUsed,
                               Set<RelDataTypeField> extraFields,
                               RelBuilder relBuilder)
        Projects a subset of the fields of the table, and also asks for "extra" fields that were not included in the table's official type.

        The default implementation assumes that tables cannot do either of these operations, therefore it adds a Project that projects NULL values for the extra fields, using the RelBuilder.project(Iterable) method.

        Sub-classes, representing table types that have these capabilities, should override.

        Parameters:
        fieldsUsed - Bitmap of the fields desired by the consumer
        extraFields - Extra fields, not advertised in the table's row-type, wanted by the consumer
        relBuilder - Builder used to create a Project
        Returns:
        Relational expression that projects the desired fields
      • accept

        public RelNode accept​(RelShuttle shuttle)
        Description copied from interface: RelNode
        Accepts a visit from a shuttle.
        Specified by:
        accept in interface RelNode
        Overrides:
        accept in class AbstractRelNode
        Parameters:
        shuttle - Shuttle
        Returns:
        A copy of this node incorporating changes made by the shuttle to this node's children
      • getHints

        public com.google.common.collect.ImmutableList<RelHint> getHints()
        Description copied from interface: Hintable
        Returns the hints of this relational expressions as an immutable list.
        Specified by:
        getHints in interface Hintable