Provided by: libattean-perl_0.019-1_all
NAME
Attean::API::Plan - Query plan
VERSION
This document describes Attean::API::Plan version 0.019
DESCRIPTION
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.
BUGS
Please report any bugs or feature requests to through the GitHub web interface at <https://github.com/kasei/attean/issues>.
SEE ALSO
AUTHOR
Gregory Todd Williams "<gwilliams@cpan.org>"
COPYRIGHT
Copyright (c) 2014--2018 Gregory Todd Williams. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.