Skip to content

Type Model

Type Model #12

GitHub Actions / clippy failed Jan 15, 2025 in 1s

reviewdog [clippy] report

reported by reviewdog 🐶

Findings (32)

optd-types/src/memo/mod.rs|35 col 9| warning: unused variable: expr
--> optd-types/src/memo/mod.rs:35:9
|
35 | expr: LogicalExpression,
| ^^^^ help: if this is intentional, prefix it with an underscore: _expr
|
= note: #[warn(unused_variables)] on by default
optd-types/src/memo/mod.rs|36 col 9| warning: unused variable: rule
--> optd-types/src/memo/mod.rs:36:9
|
36 | rule: Rule,
| ^^^^ help: if this is intentional, prefix it with an underscore: _rule
optd-types/src/memo/mod.rs|43 col 9| warning: unused variable: expr
--> optd-types/src/memo/mod.rs:43:9
|
43 | expr: LogicalExpression,
| ^^^^ help: if this is intentional, prefix it with an underscore: _expr
optd-types/src/memo/mod.rs|44 col 9| warning: unused variable: rule
--> optd-types/src/memo/mod.rs:44:9
|
44 | rule: Rule,
| ^^^^ help: if this is intentional, prefix it with an underscore: _rule
optd-types/src/memo/mod.rs|49 col 44| warning: unused variable: expr
--> optd-types/src/memo/mod.rs:49:44
|
49 | pub fn apply_transformation(&mut self, expr: PartialLogicalExpression, rule: Rule) -> Vec {
| ^^^^ help: if this is intentional, prefix it with an underscore: _expr
optd-types/src/memo/mod.rs|49 col 76| warning: unused variable: rule
--> optd-types/src/memo/mod.rs:49:76
|
49 | pub fn apply_transformation(&mut self, expr: PartialLogicalExpression, rule: Rule) -> Vec {
| ^^^^ help: if this is intentional, prefix it with an underscore: _rule
optd-types/src/memo/mod.rs|53 col 44| warning: unused variable: expr
--> optd-types/src/memo/mod.rs:53:44
|
53 | pub fn apply_implementation(&mut self, expr: PartialPhysicalExpression, rule: Rule) -> Vec {
| ^^^^ help: if this is intentional, prefix it with an underscore: _expr
optd-types/src/memo/mod.rs|53 col 77| warning: unused variable: rule
--> optd-types/src/memo/mod.rs:53:77
|
53 | pub fn apply_implementation(&mut self, expr: PartialPhysicalExpression, rule: Rule) -> Vec {
| ^^^^ help: if this is intentional, prefix it with an underscore: _rule
optd-types/src/memo/mod.rs|57 col 39| warning: unused variable: new_exprs
--> optd-types/src/memo/mod.rs:57:39
|
57 | pub fn add_expressions(&mut self, new_exprs: Vec) {
| ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: _new_exprs
optd-types/src/memo/relation/logical_expression.rs|5 col 10| warning: type memo::relation::logical_expression::Scan is more private than the item memo::relation::logical_expression::LogicalExpression::Scan::0
--> optd-types/src/memo/relation/logical_expression.rs:5:10
|
5 | Scan(Scan),
| ^^^^ field memo::relation::logical_expression::LogicalExpression::Scan::0 is reachable at visibility pub
|
note: but type memo::relation::logical_expression::Scan is only usable at visibility pub(self)
--> optd-types/src/memo/relation/logical_expression.rs:11:1
|
11 | struct Scan {
| ^^^^^^^^^^^
= note: #[warn(private_interfaces)] on by default
optd-types/src/memo/relation/logical_expression.rs|6 col 12| warning: type memo::relation::logical_expression::Filter is more private than the item memo::relation::logical_expression::LogicalExpression::Filter::0
--> optd-types/src/memo/relation/logical_expression.rs:6:12
|
6 | Filter(Filter),
| ^^^^^^ field memo::relation::logical_expression::LogicalExpression::Filter::0 is reachable at visibility pub
|
note: but type memo::relation::logical_expression::Filter is only usable at visibility pub(self)
--> optd-types/src/memo/relation/logical_expression.rs:15:1
|
15 | struct Filter {
| ^^^^^^^^^^^^^
optd-types/src/memo/relation/logical_expression.rs|7 col 10| warning: type memo::relation::logical_expression::Join is more private than the item memo::relation::logical_expression::LogicalExpression::Join::0
--> optd-types/src/memo/relation/logical_expression.rs:7:10
|
7 | Join(Join),
| ^^^^ field memo::relation::logical_expression::LogicalExpression::Join::0 is reachable at visibility pub
|
note: but type memo::relation::logical_expression::Join is only usable at visibility pub(self)
--> optd-types/src/memo/relation/logical_expression.rs:20:1
|
20 | struct Join {
| ^^^^^^^^^^^
optd-types/src/memo/relation/logical_expression.rs|8 col 10| warning: type memo::relation::logical_expression::Sort is more private than the item memo::relation::logical_expression::LogicalExpression::Sort::0
--> optd-types/src/memo/relation/logical_expression.rs:8:10
|
8 | Sort(Sort),
| ^^^^ field memo::relation::logical_expression::LogicalExpression::Sort::0 is reachable at visibility pub
|
note: but type memo::relation::logical_expression::Sort is only usable at visibility pub(self)
--> optd-types/src/memo/relation/logical_expression.rs:26:1
|
26 | struct Sort {
| ^^^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|5 col 15| warning: type memo::relation::physical_expression::TableScan is more private than the item memo::relation::physical_expression::PhysicalExpression::TableScan::0
--> optd-types/src/memo/relation/physical_expression.rs:5:15
|
5 | TableScan(TableScan),
| ^^^^^^^^^ field memo::relation::physical_expression::PhysicalExpression::TableScan::0 is reachable at visibility pub
|
note: but type memo::relation::physical_expression::TableScan is only usable at visibility pub(self)
--> optd-types/src/memo/relation/physical_expression.rs:12:1
|
12 | struct TableScan {
| ^^^^^^^^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|6 col 20| warning: type memo::relation::physical_expression::PhysicalFilter is more private than the item memo::relation::physical_expression::PhysicalExpression::PhysicalFilter::0
--> optd-types/src/memo/relation/physical_expression.rs:6:20
|
6 | PhysicalFilter(PhysicalFilter),
| ^^^^^^^^^^^^^^ field memo::relation::physical_expression::PhysicalExpression::PhysicalFilter::0 is reachable at visibility pub
|
note: but type memo::relation::physical_expression::PhysicalFilter is only usable at visibility pub(self)
--> optd-types/src/memo/relation/physical_expression.rs:16:1
|
16 | struct PhysicalFilter {
| ^^^^^^^^^^^^^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|7 col 19| warning: type memo::relation::physical_expression::SortMergeJoin is more private than the item memo::relation::physical_expression::PhysicalExpression::SortMergeJoin::0
--> optd-types/src/memo/relation/physical_expression.rs:7:19
|
7 | SortMergeJoin(SortMergeJoin),
| ^^^^^^^^^^^^^ field memo::relation::physical_expression::PhysicalExpression::SortMergeJoin::0 is reachable at visibility pub
|
note: but type memo::relation::physical_expression::SortMergeJoin is only usable at visibility pub(self)
--> optd-types/src/memo/relation/physical_expression.rs:22:1
|
22 | struct SortMergeJoin {
| ^^^^^^^^^^^^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|8 col 14| warning: type memo::relation::physical_expression::HashJoin is more private than the item memo::relation::physical_expression::PhysicalExpression::HashJoin::0
--> optd-types/src/memo/relation/physical_expression.rs:8:14
|
8 | HashJoin(HashJoin),
| ^^^^^^^^ field memo::relation::physical_expression::PhysicalExpression::HashJoin::0 is reachable at visibility pub
|
note: but type memo::relation::physical_expression::HashJoin is only usable at visibility pub(self)
--> optd-types/src/memo/relation/physical_expression.rs:29:1
|
29 | struct HashJoin {
| ^^^^^^^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|9 col 15| warning: type memo::relation::physical_expression::MergeSort is more private than the item memo::relation::physical_expression::PhysicalExpression::MergeSort::0
--> optd-types/src/memo/relation/physical_expression.rs:9:15
|
9 | MergeSort(MergeSort),
| ^^^^^^^^^ field memo::relation::physical_expression::PhysicalExpression::MergeSort::0 is reachable at visibility pub
|
note: but type memo::relation::physical_expression::MergeSort is only usable at visibility pub(self)
--> optd-types/src/memo/relation/physical_expression.rs:35:1
|
35 | struct MergeSort {
| ^^^^^^^^^^^^^^^^
optd-types/src/lib.rs|12 col 12| warning: field 0 is never read
--> optd-types/src/lib.rs:12:20
|
12 | pub struct GroupId(usize);
| ------- ^^^^^
| |
| field in this struct
|
= help: consider removing this field
= note: #[warn(dead_code)] on by default
optd-types/src/memo/mod.rs|20 col 12| warning: struct PartialLogicalExpression is never constructed
--> optd-types/src/memo/mod.rs:20:12
|
20 | pub struct PartialLogicalExpression;
| ^^^^^^^^^^^^^^^^^^^^^^^^
optd-types/src/memo/mod.rs|28 col 12| warning: struct PartialPhysicalExpression is never constructed
--> optd-types/src/memo/mod.rs:28:12
|
28 | pub struct PartialPhysicalExpression;
| ^^^^^^^^^^^^^^^^^^^^^^^^^
optd-types/src/memo/mod.rs|30 col 12| warning: struct Memo is never constructed
--> optd-types/src/memo/mod.rs:30:12
|
30 | pub struct Memo;
| ^^^^
optd-types/src/memo/mod.rs|32 col 1| warning: methods check_transformation, check_implementation, apply_transformation, apply_implementation, and add_expressions are never used
--> optd-types/src/memo/mod.rs:33:18
|
32 | impl Memo {
| --------- methods in this implementation
33 | pub async fn check_transformation(
| ^^^^^^^^^^^^^^^^^^^^
...
41 | pub async fn check_implementation(
| ^^^^^^^^^^^^^^^^^^^^
...
49 | pub fn apply_transformation(&mut self, expr: PartialLogicalExpression, rule: Rule) -> Vec {
| ^^^^^^^^^^^^^^^^^^^^
...
53 | pub fn apply_implementation(&mut self, expr: PartialPhysicalExpression, rule: Rule) -> Vec {
| ^^^^^^^^^^^^^^^^^^^^
...
57 | pub fn add_expressions(&mut self, new_exprs: Vec) {
| ^^^^^^^^^^^^^^^
optd-types/src/memo/relation/logical_expression.rs|11 col 8| warning: field table_name is never read
--> optd-types/src/memo/relation/logical_expression.rs:12:5
|
11 | struct Scan {
| ---- field in this struct
12 | table_name: String,
| ^^^^^^^^^^
optd-types/src/memo/relation/logical_expression.rs|15 col 8| warning: fields child and predicate are never read
--> optd-types/src/memo/relation/logical_expression.rs:16:5
|
15 | struct Filter {
| ------ fields in this struct
16 | child: GroupId,
| ^^^^^
17 | predicate: GroupId,
| ^^^^^^^^^
optd-types/src/memo/relation/logical_expression.rs|20 col 8| warning: fields left, right, and condition are never read
--> optd-types/src/memo/relation/logical_expression.rs:21:5
|
20 | struct Join {
| ---- fields in this struct
21 | left: GroupId,
| ^^^^
22 | right: GroupId,
| ^^^^^
23 | condition: GroupId,
| ^^^^^^^^^
optd-types/src/memo/relation/logical_expression.rs|26 col 8| warning: fields child and sort_expr are never read
--> optd-types/src/memo/relation/logical_expression.rs:27:5
|
26 | struct Sort {
| ---- fields in this struct
27 | child: GroupId,
| ^^^^^
28 | sort_expr: GroupId,
| ^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|12 col 8| warning: field table_name is never read
--> optd-types/src/memo/relation/physical_expression.rs:13:5
|
12 | struct TableScan {
| --------- field in this struct
13 | table_name: String,
| ^^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|16 col 8| warning: fields child and predicate are never read
--> optd-types/src/memo/relation/physical_expression.rs:17:5
|
16 | struct PhysicalFilter {
| -------------- fields in this struct
17 | child: GroupId,
| ^^^^^
18 | predicate: GroupId,
| ^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|22 col 8| warning: fields left, right, condition, and sort_expr are never read
--> optd-types/src/memo/relation/physical_expression.rs:23:5
|
22 | struct SortMergeJoin {
| ------------- fields in this struct
23 | left: GroupId,
| ^^^^
24 | right: GroupId,
| ^^^^^
25 | condition: GroupId,
| ^^^^^^^^^
26 | sort_expr: GroupId,
| ^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|29 col 8| warning: fields left, right, and condition are never read
--> optd-types/src/memo/relation/physical_expression.rs:30:5
|
29 | struct HashJoin {
| -------- fields in this struct
30 | left: GroupId,
| ^^^^
31 | right: GroupId,
| ^^^^^
32 | condition: GroupId,
| ^^^^^^^^^
optd-types/src/memo/relation/physical_expression.rs|35 col 8| warning: fields child and sort_expr are never read
--> optd-types/src/memo/relation/physical_expression.rs:36:5
|
35 | struct MergeSort {
| --------- fields in this struct
36 | child: GroupId,
| ^^^^^
37 | sort_expr: GroupId,
| ^^^^^^^^^

Filtered Findings (0)

Annotations

Check warning on line 35 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L35

warning: unused variable: `expr`
  --> optd-types/src/memo/mod.rs:35:9
   |
35 |         expr: LogicalExpression,
   |         ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
   |
   = note: `#[warn(unused_variables)]` on by default
Raw output
optd-types/src/memo/mod.rs:35:9:w:warning: unused variable: `expr`
  --> optd-types/src/memo/mod.rs:35:9
   |
35 |         expr: LogicalExpression,
   |         ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
   |
   = note: `#[warn(unused_variables)]` on by default


__END__

Check warning on line 36 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L36

warning: unused variable: `rule`
  --> optd-types/src/memo/mod.rs:36:9
   |
36 |         rule: Rule,
   |         ^^^^ help: if this is intentional, prefix it with an underscore: `_rule`
Raw output
optd-types/src/memo/mod.rs:36:9:w:warning: unused variable: `rule`
  --> optd-types/src/memo/mod.rs:36:9
   |
36 |         rule: Rule,
   |         ^^^^ help: if this is intentional, prefix it with an underscore: `_rule`


__END__

Check warning on line 43 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L43

warning: unused variable: `expr`
  --> optd-types/src/memo/mod.rs:43:9
   |
43 |         expr: LogicalExpression,
   |         ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
Raw output
optd-types/src/memo/mod.rs:43:9:w:warning: unused variable: `expr`
  --> optd-types/src/memo/mod.rs:43:9
   |
43 |         expr: LogicalExpression,
   |         ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`


__END__

Check warning on line 44 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L44

warning: unused variable: `rule`
  --> optd-types/src/memo/mod.rs:44:9
   |
44 |         rule: Rule,
   |         ^^^^ help: if this is intentional, prefix it with an underscore: `_rule`
Raw output
optd-types/src/memo/mod.rs:44:9:w:warning: unused variable: `rule`
  --> optd-types/src/memo/mod.rs:44:9
   |
44 |         rule: Rule,
   |         ^^^^ help: if this is intentional, prefix it with an underscore: `_rule`


__END__

Check warning on line 49 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L49

warning: unused variable: `expr`
  --> optd-types/src/memo/mod.rs:49:44
   |
49 |     pub fn apply_transformation(&mut self, expr: PartialLogicalExpression, rule: Rule) -> Vec<MemoNode> {
   |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
Raw output
optd-types/src/memo/mod.rs:49:44:w:warning: unused variable: `expr`
  --> optd-types/src/memo/mod.rs:49:44
   |
49 |     pub fn apply_transformation(&mut self, expr: PartialLogicalExpression, rule: Rule) -> Vec<MemoNode> {
   |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`


__END__

Check warning on line 49 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L49

warning: unused variable: `rule`
  --> optd-types/src/memo/mod.rs:49:76
   |
49 |     pub fn apply_transformation(&mut self, expr: PartialLogicalExpression, rule: Rule) -> Vec<MemoNode> {
   |                                                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_rule`
Raw output
optd-types/src/memo/mod.rs:49:76:w:warning: unused variable: `rule`
  --> optd-types/src/memo/mod.rs:49:76
   |
49 |     pub fn apply_transformation(&mut self, expr: PartialLogicalExpression, rule: Rule) -> Vec<MemoNode> {
   |                                                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_rule`


__END__

Check warning on line 53 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L53

warning: unused variable: `expr`
  --> optd-types/src/memo/mod.rs:53:44
   |
53 |     pub fn apply_implementation(&mut self, expr: PartialPhysicalExpression, rule: Rule) -> Vec<MemoNode> {
   |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`
Raw output
optd-types/src/memo/mod.rs:53:44:w:warning: unused variable: `expr`
  --> optd-types/src/memo/mod.rs:53:44
   |
53 |     pub fn apply_implementation(&mut self, expr: PartialPhysicalExpression, rule: Rule) -> Vec<MemoNode> {
   |                                            ^^^^ help: if this is intentional, prefix it with an underscore: `_expr`


__END__

Check warning on line 53 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L53

warning: unused variable: `rule`
  --> optd-types/src/memo/mod.rs:53:77
   |
53 |     pub fn apply_implementation(&mut self, expr: PartialPhysicalExpression, rule: Rule) -> Vec<MemoNode> {
   |                                                                             ^^^^ help: if this is intentional, prefix it with an underscore: `_rule`
Raw output
optd-types/src/memo/mod.rs:53:77:w:warning: unused variable: `rule`
  --> optd-types/src/memo/mod.rs:53:77
   |
53 |     pub fn apply_implementation(&mut self, expr: PartialPhysicalExpression, rule: Rule) -> Vec<MemoNode> {
   |                                                                             ^^^^ help: if this is intentional, prefix it with an underscore: `_rule`


__END__

Check warning on line 57 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L57

warning: unused variable: `new_exprs`
  --> optd-types/src/memo/mod.rs:57:39
   |
57 |     pub fn add_expressions(&mut self, new_exprs: Vec<MemoNode>) {
   |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_exprs`
Raw output
optd-types/src/memo/mod.rs:57:39:w:warning: unused variable: `new_exprs`
  --> optd-types/src/memo/mod.rs:57:39
   |
57 |     pub fn add_expressions(&mut self, new_exprs: Vec<MemoNode>) {
   |                                       ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_exprs`


__END__

Check warning on line 5 in optd-types/src/memo/relation/logical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/logical_expression.rs#L5

warning: type `memo::relation::logical_expression::Scan` is more private than the item `memo::relation::logical_expression::LogicalExpression::Scan::0`
  --> optd-types/src/memo/relation/logical_expression.rs:5:10
   |
5  |     Scan(Scan),
   |          ^^^^ field `memo::relation::logical_expression::LogicalExpression::Scan::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::logical_expression::Scan` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/logical_expression.rs:11:1
   |
11 | struct Scan {
   | ^^^^^^^^^^^
   = note: `#[warn(private_interfaces)]` on by default
Raw output
optd-types/src/memo/relation/logical_expression.rs:5:10:w:warning: type `memo::relation::logical_expression::Scan` is more private than the item `memo::relation::logical_expression::LogicalExpression::Scan::0`
  --> optd-types/src/memo/relation/logical_expression.rs:5:10
   |
5  |     Scan(Scan),
   |          ^^^^ field `memo::relation::logical_expression::LogicalExpression::Scan::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::logical_expression::Scan` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/logical_expression.rs:11:1
   |
11 | struct Scan {
   | ^^^^^^^^^^^
   = note: `#[warn(private_interfaces)]` on by default


__END__

Check warning on line 6 in optd-types/src/memo/relation/logical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/logical_expression.rs#L6

warning: type `memo::relation::logical_expression::Filter` is more private than the item `memo::relation::logical_expression::LogicalExpression::Filter::0`
  --> optd-types/src/memo/relation/logical_expression.rs:6:12
   |
6  |     Filter(Filter),
   |            ^^^^^^ field `memo::relation::logical_expression::LogicalExpression::Filter::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::logical_expression::Filter` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/logical_expression.rs:15:1
   |
15 | struct Filter {
   | ^^^^^^^^^^^^^
Raw output
optd-types/src/memo/relation/logical_expression.rs:6:12:w:warning: type `memo::relation::logical_expression::Filter` is more private than the item `memo::relation::logical_expression::LogicalExpression::Filter::0`
  --> optd-types/src/memo/relation/logical_expression.rs:6:12
   |
6  |     Filter(Filter),
   |            ^^^^^^ field `memo::relation::logical_expression::LogicalExpression::Filter::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::logical_expression::Filter` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/logical_expression.rs:15:1
   |
15 | struct Filter {
   | ^^^^^^^^^^^^^


__END__

Check warning on line 7 in optd-types/src/memo/relation/logical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/logical_expression.rs#L7

warning: type `memo::relation::logical_expression::Join` is more private than the item `memo::relation::logical_expression::LogicalExpression::Join::0`
  --> optd-types/src/memo/relation/logical_expression.rs:7:10
   |
7  |     Join(Join),
   |          ^^^^ field `memo::relation::logical_expression::LogicalExpression::Join::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::logical_expression::Join` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/logical_expression.rs:20:1
   |
20 | struct Join {
   | ^^^^^^^^^^^
Raw output
optd-types/src/memo/relation/logical_expression.rs:7:10:w:warning: type `memo::relation::logical_expression::Join` is more private than the item `memo::relation::logical_expression::LogicalExpression::Join::0`
  --> optd-types/src/memo/relation/logical_expression.rs:7:10
   |
7  |     Join(Join),
   |          ^^^^ field `memo::relation::logical_expression::LogicalExpression::Join::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::logical_expression::Join` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/logical_expression.rs:20:1
   |
20 | struct Join {
   | ^^^^^^^^^^^


__END__

Check warning on line 8 in optd-types/src/memo/relation/logical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/logical_expression.rs#L8

warning: type `memo::relation::logical_expression::Sort` is more private than the item `memo::relation::logical_expression::LogicalExpression::Sort::0`
  --> optd-types/src/memo/relation/logical_expression.rs:8:10
   |
8  |     Sort(Sort),
   |          ^^^^ field `memo::relation::logical_expression::LogicalExpression::Sort::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::logical_expression::Sort` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/logical_expression.rs:26:1
   |
26 | struct Sort {
   | ^^^^^^^^^^^
Raw output
optd-types/src/memo/relation/logical_expression.rs:8:10:w:warning: type `memo::relation::logical_expression::Sort` is more private than the item `memo::relation::logical_expression::LogicalExpression::Sort::0`
  --> optd-types/src/memo/relation/logical_expression.rs:8:10
   |
8  |     Sort(Sort),
   |          ^^^^ field `memo::relation::logical_expression::LogicalExpression::Sort::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::logical_expression::Sort` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/logical_expression.rs:26:1
   |
26 | struct Sort {
   | ^^^^^^^^^^^


__END__

Check warning on line 5 in optd-types/src/memo/relation/physical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/physical_expression.rs#L5

warning: type `memo::relation::physical_expression::TableScan` is more private than the item `memo::relation::physical_expression::PhysicalExpression::TableScan::0`
  --> optd-types/src/memo/relation/physical_expression.rs:5:15
   |
5  |     TableScan(TableScan),
   |               ^^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::TableScan::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::TableScan` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:12:1
   |
12 | struct TableScan {
   | ^^^^^^^^^^^^^^^^
Raw output
optd-types/src/memo/relation/physical_expression.rs:5:15:w:warning: type `memo::relation::physical_expression::TableScan` is more private than the item `memo::relation::physical_expression::PhysicalExpression::TableScan::0`
  --> optd-types/src/memo/relation/physical_expression.rs:5:15
   |
5  |     TableScan(TableScan),
   |               ^^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::TableScan::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::TableScan` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:12:1
   |
12 | struct TableScan {
   | ^^^^^^^^^^^^^^^^


__END__

Check warning on line 6 in optd-types/src/memo/relation/physical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/physical_expression.rs#L6

warning: type `memo::relation::physical_expression::PhysicalFilter` is more private than the item `memo::relation::physical_expression::PhysicalExpression::PhysicalFilter::0`
  --> optd-types/src/memo/relation/physical_expression.rs:6:20
   |
6  |     PhysicalFilter(PhysicalFilter),
   |                    ^^^^^^^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::PhysicalFilter::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::PhysicalFilter` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:16:1
   |
16 | struct PhysicalFilter {
   | ^^^^^^^^^^^^^^^^^^^^^
Raw output
optd-types/src/memo/relation/physical_expression.rs:6:20:w:warning: type `memo::relation::physical_expression::PhysicalFilter` is more private than the item `memo::relation::physical_expression::PhysicalExpression::PhysicalFilter::0`
  --> optd-types/src/memo/relation/physical_expression.rs:6:20
   |
6  |     PhysicalFilter(PhysicalFilter),
   |                    ^^^^^^^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::PhysicalFilter::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::PhysicalFilter` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:16:1
   |
16 | struct PhysicalFilter {
   | ^^^^^^^^^^^^^^^^^^^^^


__END__

Check warning on line 7 in optd-types/src/memo/relation/physical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/physical_expression.rs#L7

warning: type `memo::relation::physical_expression::SortMergeJoin` is more private than the item `memo::relation::physical_expression::PhysicalExpression::SortMergeJoin::0`
  --> optd-types/src/memo/relation/physical_expression.rs:7:19
   |
7  |     SortMergeJoin(SortMergeJoin),
   |                   ^^^^^^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::SortMergeJoin::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::SortMergeJoin` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:22:1
   |
22 | struct SortMergeJoin {
   | ^^^^^^^^^^^^^^^^^^^^
Raw output
optd-types/src/memo/relation/physical_expression.rs:7:19:w:warning: type `memo::relation::physical_expression::SortMergeJoin` is more private than the item `memo::relation::physical_expression::PhysicalExpression::SortMergeJoin::0`
  --> optd-types/src/memo/relation/physical_expression.rs:7:19
   |
7  |     SortMergeJoin(SortMergeJoin),
   |                   ^^^^^^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::SortMergeJoin::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::SortMergeJoin` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:22:1
   |
22 | struct SortMergeJoin {
   | ^^^^^^^^^^^^^^^^^^^^


__END__

Check warning on line 8 in optd-types/src/memo/relation/physical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/physical_expression.rs#L8

warning: type `memo::relation::physical_expression::HashJoin` is more private than the item `memo::relation::physical_expression::PhysicalExpression::HashJoin::0`
  --> optd-types/src/memo/relation/physical_expression.rs:8:14
   |
8  |     HashJoin(HashJoin),
   |              ^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::HashJoin::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::HashJoin` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:29:1
   |
29 | struct HashJoin {
   | ^^^^^^^^^^^^^^^
Raw output
optd-types/src/memo/relation/physical_expression.rs:8:14:w:warning: type `memo::relation::physical_expression::HashJoin` is more private than the item `memo::relation::physical_expression::PhysicalExpression::HashJoin::0`
  --> optd-types/src/memo/relation/physical_expression.rs:8:14
   |
8  |     HashJoin(HashJoin),
   |              ^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::HashJoin::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::HashJoin` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:29:1
   |
29 | struct HashJoin {
   | ^^^^^^^^^^^^^^^


__END__

Check warning on line 9 in optd-types/src/memo/relation/physical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/physical_expression.rs#L9

warning: type `memo::relation::physical_expression::MergeSort` is more private than the item `memo::relation::physical_expression::PhysicalExpression::MergeSort::0`
  --> optd-types/src/memo/relation/physical_expression.rs:9:15
   |
9  |     MergeSort(MergeSort),
   |               ^^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::MergeSort::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::MergeSort` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:35:1
   |
35 | struct MergeSort {
   | ^^^^^^^^^^^^^^^^
Raw output
optd-types/src/memo/relation/physical_expression.rs:9:15:w:warning: type `memo::relation::physical_expression::MergeSort` is more private than the item `memo::relation::physical_expression::PhysicalExpression::MergeSort::0`
  --> optd-types/src/memo/relation/physical_expression.rs:9:15
   |
9  |     MergeSort(MergeSort),
   |               ^^^^^^^^^ field `memo::relation::physical_expression::PhysicalExpression::MergeSort::0` is reachable at visibility `pub`
   |
note: but type `memo::relation::physical_expression::MergeSort` is only usable at visibility `pub(self)`
  --> optd-types/src/memo/relation/physical_expression.rs:35:1
   |
35 | struct MergeSort {
   | ^^^^^^^^^^^^^^^^


__END__

Check warning on line 12 in optd-types/src/lib.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/lib.rs#L12

warning: field `0` is never read
  --> optd-types/src/lib.rs:12:20
   |
12 | pub struct GroupId(usize);
   |            ------- ^^^^^
   |            |
   |            field in this struct
   |
   = help: consider removing this field
   = note: `#[warn(dead_code)]` on by default
Raw output
optd-types/src/lib.rs:12:12:w:warning: field `0` is never read
  --> optd-types/src/lib.rs:12:20
   |
12 | pub struct GroupId(usize);
   |            ------- ^^^^^
   |            |
   |            field in this struct
   |
   = help: consider removing this field
   = note: `#[warn(dead_code)]` on by default


__END__

Check warning on line 20 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L20

warning: struct `PartialLogicalExpression` is never constructed
  --> optd-types/src/memo/mod.rs:20:12
   |
20 | pub struct PartialLogicalExpression;
   |            ^^^^^^^^^^^^^^^^^^^^^^^^
Raw output
optd-types/src/memo/mod.rs:20:12:w:warning: struct `PartialLogicalExpression` is never constructed
  --> optd-types/src/memo/mod.rs:20:12
   |
20 | pub struct PartialLogicalExpression;
   |            ^^^^^^^^^^^^^^^^^^^^^^^^


__END__

Check warning on line 28 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L28

warning: struct `PartialPhysicalExpression` is never constructed
  --> optd-types/src/memo/mod.rs:28:12
   |
28 | pub struct PartialPhysicalExpression;
   |            ^^^^^^^^^^^^^^^^^^^^^^^^^
Raw output
optd-types/src/memo/mod.rs:28:12:w:warning: struct `PartialPhysicalExpression` is never constructed
  --> optd-types/src/memo/mod.rs:28:12
   |
28 | pub struct PartialPhysicalExpression;
   |            ^^^^^^^^^^^^^^^^^^^^^^^^^


__END__

Check warning on line 30 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L30

warning: struct `Memo` is never constructed
  --> optd-types/src/memo/mod.rs:30:12
   |
30 | pub struct Memo;
   |            ^^^^
Raw output
optd-types/src/memo/mod.rs:30:12:w:warning: struct `Memo` is never constructed
  --> optd-types/src/memo/mod.rs:30:12
   |
30 | pub struct Memo;
   |            ^^^^


__END__

Check warning on line 32 in optd-types/src/memo/mod.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/mod.rs#L32

warning: methods `check_transformation`, `check_implementation`, `apply_transformation`, `apply_implementation`, and `add_expressions` are never used
  --> optd-types/src/memo/mod.rs:33:18
   |
32 | impl Memo {
   | --------- methods in this implementation
33 |     pub async fn check_transformation(
   |                  ^^^^^^^^^^^^^^^^^^^^
...
41 |     pub async fn check_implementation(
   |                  ^^^^^^^^^^^^^^^^^^^^
...
49 |     pub fn apply_transformation(&mut self, expr: PartialLogicalExpression, rule: Rule) -> Vec<MemoNode> {
   |            ^^^^^^^^^^^^^^^^^^^^
...
53 |     pub fn apply_implementation(&mut self, expr: PartialPhysicalExpression, rule: Rule) -> Vec<MemoNode> {
   |            ^^^^^^^^^^^^^^^^^^^^
...
57 |     pub fn add_expressions(&mut self, new_exprs: Vec<MemoNode>) {
   |            ^^^^^^^^^^^^^^^
Raw output
optd-types/src/memo/mod.rs:32:1:w:warning: methods `check_transformation`, `check_implementation`, `apply_transformation`, `apply_implementation`, and `add_expressions` are never used
  --> optd-types/src/memo/mod.rs:33:18
   |
32 | impl Memo {
   | --------- methods in this implementation
33 |     pub async fn check_transformation(
   |                  ^^^^^^^^^^^^^^^^^^^^
...
41 |     pub async fn check_implementation(
   |                  ^^^^^^^^^^^^^^^^^^^^
...
49 |     pub fn apply_transformation(&mut self, expr: PartialLogicalExpression, rule: Rule) -> Vec<MemoNode> {
   |            ^^^^^^^^^^^^^^^^^^^^
...
53 |     pub fn apply_implementation(&mut self, expr: PartialPhysicalExpression, rule: Rule) -> Vec<MemoNode> {
   |            ^^^^^^^^^^^^^^^^^^^^
...
57 |     pub fn add_expressions(&mut self, new_exprs: Vec<MemoNode>) {
   |            ^^^^^^^^^^^^^^^


__END__

Check warning on line 11 in optd-types/src/memo/relation/logical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/logical_expression.rs#L11

warning: field `table_name` is never read
  --> optd-types/src/memo/relation/logical_expression.rs:12:5
   |
11 | struct Scan {
   |        ---- field in this struct
12 |     table_name: String,
   |     ^^^^^^^^^^
Raw output
optd-types/src/memo/relation/logical_expression.rs:11:8:w:warning: field `table_name` is never read
  --> optd-types/src/memo/relation/logical_expression.rs:12:5
   |
11 | struct Scan {
   |        ---- field in this struct
12 |     table_name: String,
   |     ^^^^^^^^^^


__END__

Check warning on line 15 in optd-types/src/memo/relation/logical_expression.rs

See this annotation in the file changed.

@github-actions github-actions / clippy

[clippy] optd-types/src/memo/relation/logical_expression.rs#L15

warning: fields `child` and `predicate` are never read
  --> optd-types/src/memo/relation/logical_expression.rs:16:5
   |
15 | struct Filter {
   |        ------ fields in this struct
16 |     child: GroupId,
   |     ^^^^^
17 |     predicate: GroupId,
   |     ^^^^^^^^^
Raw output
optd-types/src/memo/relation/logical_expression.rs:15:8:w:warning: fields `child` and `predicate` are never read
  --> optd-types/src/memo/relation/logical_expression.rs:16:5
   |
15 | struct Filter {
   |        ------ fields in this struct
16 |     child: GroupId,
   |     ^^^^^
17 |     predicate: GroupId,
   |     ^^^^^^^^^


__END__