Attean::API::Plan - Query plan
This document describes Attean::API::Plan version 0.035
The Attean::API::Plan role defines a common API for all query
plans.
- "cost"
- "distinct"
- "item_type"
- "in_scope_variables"
- "ordered"
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.
- "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.
Please report any bugs or feature requests to through the GitHub
web interface at <https://github.com/kasei/attean/issues>.
Gregory Todd Williams
"<gwilliams@cpan.org>"
Copyright (c) 2014--2022 Gregory Todd Williams. This program is
free software; you can redistribute it and/or modify it under the same terms
as Perl itself.