1Attean::API::Plan(3) User Contributed Perl Documentation Attean::API::Plan(3)
2
3
4
6 Attean::API::Plan - Query plan
7
9 This document describes Attean::API::Plan version 0.033
10
12 The Attean::API::Plan role defines a common API for all query plans.
13
15 "cost"
16 "distinct"
17 "item_type"
18 "in_scope_variables"
19 "ordered"
20
22 The following methods are required by the Attean::API::Plan role:
23
24 impl( $model )
25 Returns a code reference that when called (without arguments),
26 returns an Attean::API::Iterator object.
27
29 "has_cost"
30 "as_string"
31 Returns a tree-structured string representation of this plan,
32 including children.
33
34 evaluate( $model )
35 Evaluates this plan and returns the resulting iterator.
36
37 in_scope_variables_union( @plans )
38 Returns the set union of "in_scope_variables" of the given plan
39 objects.
40
41 subplans_of_type_are_variable_connected( $type )
42 Returns true if the subpatterns of the given $type are all
43 connected through their "in_scope_variables", false otherwise
44 (implying a cartesian product if the connecting plans perform some
45 form of join.
46
47 children_are_variable_connected( $type )
48 Returns true if the children of this plan are all connected through
49 their "in_scope_variables", false otherwise (implying a cartesian
50 product if this plan performs some form of join.
51
53 Please report any bugs or feature requests to through the GitHub web
54 interface at <https://github.com/kasei/attean/issues>.
55
58 Gregory Todd Williams "<gwilliams@cpan.org>"
59
61 Copyright (c) 2014--2022 Gregory Todd Williams. This program is free
62 software; you can redistribute it and/or modify it under the same terms
63 as Perl itself.
64
65
66
67perl v5.36.0 2023-01-19 Attean::API::Plan(3)