Attean::API::Plan(3pm)

Attean::API::Plan3pm

Query plan

Version

This document describes Attean::API::Plan version 0.035

Overview

The Attean::API::Plan role defines a common API for all query plans.

Attributes

"cost"
"distinct"
"item_type"
"in_scope_variables"
"ordered"

Required methods

The following methods are required by the Attean::API::Plan role:

impl( $model )

Returns a code reference that when called (without arguments), returns an Attean::API::Iterator object.

Methods

"has_cost"
"as_string"

Returns a tree-structured string representation of this plan, including children.

evaluate( $model )

Evaluates this plan and returns the resulting iterator.

in_scope_variables_union( @plans )

Returns the set union of "in_scope_variables" of the given plan objects.

subplans_of_type_are_variable_connected( $type )

Returns true if the subpatterns of the given $type are all connected through their "in_scope_variables", false otherwise (implying a cartesian product if the connecting plans perform some form of join.

children_are_variable_connected( $type )

Returns true if the children of this plan are all connected through their "in_scope_variables", false otherwise (implying a cartesian product if this plan performs some form of join.

Releases

5 releases since Debian 9 (Stretch); the text changed 4 times.

  1. 9
  2. 10
  3. 11
  4. 12
  5. 13

Bugs

Please report any bugs or feature requests to through the GitHub web interface at <https://github.com/kasei/attean/issues>.

Author

Gregory Todd Williams "<[email protected]>"

From libattean-perl 0.035-1 in Debian 13 (Trixie). Parsed by carta from the page's man source.