Skip to content

feat: DSL operator codegen #137

feat: DSL operator codegen

feat: DSL operator codegen #137

Triggered via pull request February 11, 2025 08:15
@AlSchloAlSchlo
synchronize #25
alexis/dsl-gen
Status Failure
Total duration 1m 3s
Artifacts

check.yml

on: pull_request
stable / fmt
10s
stable / fmt
ubuntu / stable / features
47s
ubuntu / stable / features
Matrix: clippy
Matrix: msrv
Fit to window
Zoom out
Zoom in

Annotations

1 error and 130 warnings
stable / fmt
Process completed with exit code 1.
[clippy] optd-dsl/src/gen/operator.rs#L2: optd-dsl/src/gen/operator.rs#L2
warning: unused imports: `analyzer::semantic::SemanticAnalyzer` and `parser::parse_file` --> optd-dsl/src/gen/operator.rs:2:5 | 2 | analyzer::semantic::SemanticAnalyzer, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 3 | ast::{Field, LogicalOp, Operator, OperatorKind, ScalarOp, Type}, 4 | parser::parse_file, | ^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
[clippy] optd-dsl/src/analyzer/semantic.rs#L13: optd-dsl/src/analyzer/semantic.rs#L13
warning: fields `logical_properties`, `operators`, and `identifiers` are never read --> optd-dsl/src/analyzer/semantic.rs:14:5 | 13 | pub struct SemanticAnalyzer { | ---------------- fields in this struct 14 | logical_properties: HashSet<String>, | ^^^^^^^^^^^^^^^^^^ 15 | operators: HashSet<String>, | ^^^^^^^^^ 16 | identifiers: Vec<HashSet<String>>, | ^^^^^^^^^^^ | = note: `SemanticAnalyzer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis = note: `#[warn(dead_code)]` on by default
[clippy] optd-dsl/src/analyzer/semantic.rs#L26: optd-dsl/src/analyzer/semantic.rs#L26
warning: multiple associated items are never used --> optd-dsl/src/analyzer/semantic.rs:38:8 | 26 | impl SemanticAnalyzer { | --------------------- associated items in this implementation ... 38 | fn enter_scope(&mut self) { | ^^^^^^^^^^^ ... 44 | fn exit_scope(&mut self) { | ^^^^^^^^^^ ... 57 | fn add_identifier(&mut self, name: String) -> Result<(), String> { | ^^^^^^^^^^^^^^ ... 76 | fn lookup_identifier(&self, name: &str) -> bool { | ^^^^^^^^^^^^^^^^^ ... 92 | fn is_valid_scalar_type(ty: &Type) -> bool { | ^^^^^^^^^^^^^^^^^^^^ ... 111 | fn is_valid_logical_type(ty: &Type) -> bool { | ^^^^^^^^^^^^^^^^^^^^^ ... 130 | fn is_valid_property_type(ty: &Type) -> bool { | ^^^^^^^^^^^^^^^^^^^^^^ ... 148 | fn validate_properties(&mut self, properties: &Properties) -> Result<(), String> { | ^^^^^^^^^^^^^^^^^^^ ... 174 | fn validate_operator(&mut self, operator: &Operator) -> Result<(), String> { | ^^^^^^^^^^^^^^^^^ ... 239 | fn validate_function(&mut self, function: &Function) -> Result<(), String> { | ^^^^^^^^^^^^^^^^^ ... 269 | fn validate_expr(&mut self, expr: &Expr) -> Result<(), String> { | ^^^^^^^^^^^^^ ... 342 | fn validate_pattern(&mut self, pattern: &Pattern) -> Result<(), String> { | ^^^^^^^^^^^^^^^^ ... 370 | pub fn validate_file(&mut self, file: &File) -> Result<(), String> { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/ast.rs#L5: optd-dsl/src/ast.rs#L5
warning: multiple variants are never constructed --> optd-dsl/src/ast.rs:6:5 | 5 | pub enum Type { | ---- variants in this enum 6 | Int64, | ^^^^^ 7 | String, | ^^^^^^ 8 | Bool, | ^^^^ 9 | Float64, | ^^^^^^^ 10 | Array(Box<Type>), // Array types like [T] | ^^^^^ 11 | Map(Box<Type>, Box<Type>), // Map types like map[K->V] | ^^^ 12 | Tuple(Vec<Type>), // Tuple types like (T1, T2) | ^^^^^ 13 | Function(Box<Type>, Box<Type>), // Function types like (T1)->T2 | ^^^^^^^^ 14 | Operator(OperatorKind), // Operator types (scalar/logical) | ^^^^^^^^ | = note: `Type` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L19: optd-dsl/src/ast.rs#L19
warning: variants `Scalar` and `Logical` are never constructed --> optd-dsl/src/ast.rs:20:5 | 19 | pub enum OperatorKind { | ------------ variants in this enum 20 | Scalar, // Scalar operators | ^^^^^^ 21 | Logical, // Logical operators with derivable properties | ^^^^^^^ | = note: `OperatorKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L26: optd-dsl/src/ast.rs#L26
warning: struct `Field` is never constructed --> optd-dsl/src/ast.rs:26:12 | 26 | pub struct Field { | ^^^^^ | = note: `Field` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L33: optd-dsl/src/ast.rs#L33
warning: struct `Properties` is never constructed --> optd-dsl/src/ast.rs:33:12 | 33 | pub struct Properties { | ^^^^^^^^^^ | = note: `Properties` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L39: optd-dsl/src/ast.rs#L39
warning: enum `Operator` is never used --> optd-dsl/src/ast.rs:39:10 | 39 | pub enum Operator { | ^^^^^^^^ | = note: `Operator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L46: optd-dsl/src/ast.rs#L46
warning: struct `ScalarOp` is never constructed --> optd-dsl/src/ast.rs:46:12 | 46 | pub struct ScalarOp { | ^^^^^^^^ | = note: `ScalarOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L53: optd-dsl/src/ast.rs#L53
warning: struct `LogicalOp` is never constructed --> optd-dsl/src/ast.rs:53:12 | 53 | pub struct LogicalOp { | ^^^^^^^^^ | = note: `LogicalOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L61: optd-dsl/src/ast.rs#L61
warning: enum `Pattern` is never used --> optd-dsl/src/ast.rs:61:10 | 61 | pub enum Pattern { | ^^^^^^^ | = note: `Pattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L74: optd-dsl/src/ast.rs#L74
warning: enum `Literal` is never used --> optd-dsl/src/ast.rs:74:10 | 74 | pub enum Literal { | ^^^^^^^ | = note: `Literal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L85: optd-dsl/src/ast.rs#L85
warning: enum `Expr` is never used --> optd-dsl/src/ast.rs:85:10 | 85 | pub enum Expr { | ^^^^ | = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L104: optd-dsl/src/ast.rs#L104
warning: struct `MatchArm` is never constructed --> optd-dsl/src/ast.rs:104:12 | 104 | pub struct MatchArm { | ^^^^^^^^ | = note: `MatchArm` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L111: optd-dsl/src/ast.rs#L111
warning: enum `BinOp` is never used --> optd-dsl/src/ast.rs:111:10 | 111 | pub enum BinOp { | ^^^^^ | = note: `BinOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L130: optd-dsl/src/ast.rs#L130
warning: enum `UnaryOp` is never used --> optd-dsl/src/ast.rs:130:10 | 130 | pub enum UnaryOp { | ^^^^^^^ | = note: `UnaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L137: optd-dsl/src/ast.rs#L137
warning: struct `Function` is never constructed --> optd-dsl/src/ast.rs:137:12 | 137 | pub struct Function { | ^^^^^^^^ | = note: `Function` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L147: optd-dsl/src/ast.rs#L147
warning: struct `File` is never constructed --> optd-dsl/src/ast.rs:147:12 | 147 | pub struct File { | ^^^^ | = note: `File` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/parser/mod.rs#L21: optd-dsl/src/parser/mod.rs#L21
warning: struct `DslParser` is never constructed --> optd-dsl/src/parser/mod.rs:21:12 | 21 | pub struct DslParser; | ^^^^^^^^^
[clippy] optd-dsl/src/parser/mod.rs#L30: optd-dsl/src/parser/mod.rs#L30
warning: function `parse_file` is never used --> optd-dsl/src/parser/mod.rs:30:8 | 30 | pub fn parse_file(input: &str) -> Result<File, Box<Error<Rule>>> { | ^^^^^^^^^^
[clippy] optd-dsl/src/parser/mod.rs#L67: optd-dsl/src/parser/mod.rs#L67
warning: function `parse_properties_block` is never used --> optd-dsl/src/parser/mod.rs:67:4 | 67 | fn parse_properties_block(pair: Pair<Rule>) -> Properties { | ^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/mod.rs#L86: optd-dsl/src/parser/mod.rs#L86
warning: function `parse_field_def` is never used --> optd-dsl/src/parser/mod.rs:86:15 | 86 | pub(crate) fn parse_field_def(pair: Pair<Rule>) -> Field { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L14: optd-dsl/src/parser/expr.rs#L14
warning: function `parse_expr` is never used --> optd-dsl/src/parser/expr.rs:14:8 | 14 | pub fn parse_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L43: optd-dsl/src/parser/expr.rs#L43
warning: function `parse_closure` is never used --> optd-dsl/src/parser/expr.rs:43:4 | 43 | fn parse_closure(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L61: optd-dsl/src/parser/expr.rs#L61
warning: function `parse_binary_operation` is never used --> optd-dsl/src/parser/expr.rs:61:4 | 61 | fn parse_binary_operation(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L75: optd-dsl/src/parser/expr.rs#L75
warning: function `parse_postfix` is never used --> optd-dsl/src/parser/expr.rs:75:4 | 75 | fn parse_postfix(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L111: optd-dsl/src/parser/expr.rs#L111
warning: function `parse_prefix` is never used --> optd-dsl/src/parser/expr.rs:111:4 | 111 | fn parse_prefix(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L129: optd-dsl/src/parser/expr.rs#L129
warning: function `parse_match_expr` is never used --> optd-dsl/src/parser/expr.rs:129:4 | 129 | fn parse_match_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L144: optd-dsl/src/parser/expr.rs#L144
warning: function `parse_match_arm` is never used --> optd-dsl/src/parser/expr.rs:144:4 | 144 | fn parse_match_arm(pair: Pair<'_, Rule>) -> MatchArm { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L152: optd-dsl/src/parser/expr.rs#L152
warning: function `parse_if_expr` is never used --> optd-dsl/src/parser/expr.rs:152:4 | 152 | fn parse_if_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L166: optd-dsl/src/parser/expr.rs#L166
warning: function `parse_val_expr` is never used --> optd-dsl/src/parser/expr.rs:166:4 | 166 | fn parse_val_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L176: optd-dsl/src/parser/expr.rs#L176
warning: function `parse_array_literal` is never used --> optd-dsl/src/parser/expr.rs:176:4 | 176 | fn parse_array_literal(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L182: optd-dsl/src/parser/expr.rs#L182
warning: function `parse_tuple_literal` is never used --> optd-dsl/src/parser/expr.rs:182:4 | 182 | fn parse_tuple_literal(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L188: optd-dsl/src/parser/expr.rs#L188
warning: function `parse_constructor` is never used --> optd-dsl/src/parser/expr.rs:188:4 | 188 | fn parse_constructor(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L203: optd-dsl/src/parser/expr.rs#L203
warning: function `parse_number` is never used --> optd-dsl/src/parser/expr.rs:203:4 | 203 | fn parse_number(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L209: optd-dsl/src/parser/expr.rs#L209
warning: function `parse_string` is never used --> optd-dsl/src/parser/expr.rs:209:4 | 209 | fn parse_string(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L215: optd-dsl/src/parser/expr.rs#L215
warning: function `parse_boolean` is never used --> optd-dsl/src/parser/expr.rs:215:4 | 215 | fn parse_boolean(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L221: optd-dsl/src/parser/expr.rs#L221
warning: function `parse_fail_expr` is never used --> optd-dsl/src/parser/expr.rs:221:4 | 221 | fn parse_fail_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L227: optd-dsl/src/parser/expr.rs#L227
warning: function `parse_binary_operator` is never used --> optd-dsl/src/parser/expr.rs:227:4 | 227 | fn parse_binary_operator(pair: Pair<'_, Rule>) -> BinOp { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/functions.rs#L16: optd-dsl/src/parser/functions.rs#L16
warning: function `parse_function_def` is never used --> optd-dsl/src/parser/functions.rs:16:8 | 16 | pub fn parse_function_def(pair: Pair<'_, Rule>) -> Function { | ^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/functions.rs#L57: optd-dsl/src/parser/functions.rs#L57
warning: function `parse_params` is never used --> optd-dsl/src/parser/functions.rs:57:4 | 57 | fn parse_params(pair: Pair<'_, Rule>) -> Vec<(String, Type)> { | ^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/functions.rs#L71: optd-dsl/src/parser/functions.rs#L71
warning: function `parse_param` is never used --> optd-dsl/src/parser/functions.rs:71:4 | 71 | fn parse_param(pair: Pair<'_, Rule>) -> (String, Type) { | ^^^^^^^^^^^
[clippy] optd-dsl/src/parser/functions.rs#L94: optd-dsl/src/parser/functions.rs#L94
warning: function `parse_rule_annotation` is never used --> optd-dsl/src/parser/functions.rs:94:4 | 94 | fn parse_rule_annotation(pair: Pair<'_, Rule>) -> OperatorKind { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L14: optd-dsl/src/parser/operators.rs#L14
warning: function `parse_operator_def` is never used --> optd-dsl/src/parser/operators.rs:14:8 | 14 | pub fn parse_operator_def(pair: Pair<'_, Rule>) -> Operator { | ^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L45: optd-dsl/src/parser/operators.rs#L45
warning: function `parse_operator_type` is never used --> optd-dsl/src/parser/operators.rs:45:4 | 45 | fn parse_operator_type(pair: Pair<'_, Rule>) -> OperatorKind { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L54: optd-dsl/src/parser/operators.rs#L54
warning: function `parse_field_def_list` is never used --> optd-dsl/src/parser/operators.rs:54:4 | 54 | fn parse_field_def_list(pair: Pair<'_, Rule>) -> Vec<Field> { | ^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L59: optd-dsl/src/parser/operators.rs#L59
warning: function `parse_derive_props_block` is never used --> optd-dsl/src/parser/operators.rs:59:4 | 59 | fn parse_derive_props_block(pair: Pair<'_, Rule>) -> HashMap<String, Expr> { | ^^^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L73: optd-dsl/src/parser/operators.rs#L73
warning: function `parse_prop_derivation` is never used --> optd-dsl/src/parser/operators.rs:73:4 | 73 | fn parse_prop_derivation(pair: Pair<'_, Rule>) -> (String, Expr) { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L96: optd-dsl/src/parser/operators.rs#L96
warning: function `create_operator` is never used --> optd-dsl/src/parser/operators.rs:96:4 | 96 | fn create_operator( | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/patterns.rs#L13: optd-dsl/src/parser/patterns.rs#L13
warning: function `parse_pattern` is never used --> optd-dsl/src/parser/patterns.rs:13:8 | 13 | pub fn parse_pattern(pair: Pair<'_, Rule>) -> Pattern { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/patterns.rs#L41: optd-dsl/src/parser/patterns.rs#L41
warning: function `parse_constructor_pattern` is never used --> optd-dsl/src/parser/patterns.rs:41:4 | 41 | fn parse_constructor_pattern(pair: Pair<'_, Rule>) -> Pattern { | ^^^^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/patterns.rs#L74: optd-dsl/src/parser/patterns.rs#L74
warning: function `parse_literal_pattern` is never used --> optd-dsl/src/parser/patterns.rs:74:4 | 74 | fn parse_literal_pattern(pair: Pair<'_, Rule>) -> Pattern { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/patterns.rs#L80: optd-dsl/src/parser/patterns.rs#L80
warning: function `parse_literal` is never used --> optd-dsl/src/parser/patterns.rs:80:4 | 80 | fn parse_literal(pair: Pair<'_, Rule>) -> Literal { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L14: optd-dsl/src/parser/types.rs#L14
warning: function `parse_type_expr` is never used --> optd-dsl/src/parser/types.rs:14:8 | 14 | pub fn parse_type_expr(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L28: optd-dsl/src/parser/types.rs#L28
warning: function `parse_base_type` is never used --> optd-dsl/src/parser/types.rs:28:4 | 28 | fn parse_base_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L39: optd-dsl/src/parser/types.rs#L39
warning: function `parse_array_type` is never used --> optd-dsl/src/parser/types.rs:39:4 | 39 | fn parse_array_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L45: optd-dsl/src/parser/types.rs#L45
warning: function `parse_map_type` is never used --> optd-dsl/src/parser/types.rs:45:4 | 45 | fn parse_map_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L53: optd-dsl/src/parser/types.rs#L53
warning: function `parse_tuple_type` is never used --> optd-dsl/src/parser/types.rs:53:4 | 53 | fn parse_tuple_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L59: optd-dsl/src/parser/types.rs#L59
warning: function `parse_function_type` is never used --> optd-dsl/src/parser/types.rs:59:4 | 59 | fn parse_function_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L67: optd-dsl/src/parser/types.rs#L67
warning: function `parse_operator_type` is never used --> optd-dsl/src/parser/types.rs:67:4 | 67 | fn parse_operator_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L70: optd-dsl/src/gen/operator.rs#L70
warning: function `generate_logical_enum` is never used --> optd-dsl/src/gen/operator.rs:70:4 | 70 | fn generate_logical_enum(operators: &[LogicalOp]) -> TokenStream { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L111: optd-dsl/src/gen/operator.rs#L111
warning: function `generate_scalar_enum` is never used --> optd-dsl/src/gen/operator.rs:111:4 | 111 | fn generate_scalar_enum(operators: &[ScalarOp]) -> TokenStream { | ^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L151: optd-dsl/src/gen/operator.rs#L151
warning: function `generate_code` is never used --> optd-dsl/src/gen/operator.rs:151:4 | 151 | fn generate_code(operators: &[Operator]) -> TokenStream { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L216: optd-dsl/src/gen/operator.rs#L216
warning: function `generate_scalar_operator` is never used --> optd-dsl/src/gen/operator.rs:216:4 | 216 | fn generate_scalar_operator(operator: &ScalarOp) -> TokenStream { | ^^^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L155: optd-dsl/src/gen/operator.rs#L155
warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `slice` --> optd-dsl/src/gen/operator.rs:155:31 | 155 | for operator in operators.into_iter().cloned() { | ^^^^^^^^^ help: call directly: `iter` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref = note: `#[warn(clippy::into_iter_on_ref)]` on by default
[clippy] optd-dsl/src/gen/operator.rs#L2: optd-dsl/src/gen/operator.rs#L2
warning: unused imports: `analyzer::semantic::SemanticAnalyzer` and `parser::parse_file` --> optd-dsl/src/gen/operator.rs:2:5 | 2 | analyzer::semantic::SemanticAnalyzer, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 3 | ast::{Field, LogicalOp, Operator, OperatorKind, ScalarOp, Type}, 4 | parser::parse_file, | ^^^^^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
[clippy] optd-dsl/src/analyzer/semantic.rs#L13: optd-dsl/src/analyzer/semantic.rs#L13
warning: fields `logical_properties`, `operators`, and `identifiers` are never read --> optd-dsl/src/analyzer/semantic.rs:14:5 | 13 | pub struct SemanticAnalyzer { | ---------------- fields in this struct 14 | logical_properties: HashSet<String>, | ^^^^^^^^^^^^^^^^^^ 15 | operators: HashSet<String>, | ^^^^^^^^^ 16 | identifiers: Vec<HashSet<String>>, | ^^^^^^^^^^^ | = note: `SemanticAnalyzer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis = note: `#[warn(dead_code)]` on by default
[clippy] optd-dsl/src/analyzer/semantic.rs#L26: optd-dsl/src/analyzer/semantic.rs#L26
warning: multiple associated items are never used --> optd-dsl/src/analyzer/semantic.rs:38:8 | 26 | impl SemanticAnalyzer { | --------------------- associated items in this implementation ... 38 | fn enter_scope(&mut self) { | ^^^^^^^^^^^ ... 44 | fn exit_scope(&mut self) { | ^^^^^^^^^^ ... 57 | fn add_identifier(&mut self, name: String) -> Result<(), String> { | ^^^^^^^^^^^^^^ ... 76 | fn lookup_identifier(&self, name: &str) -> bool { | ^^^^^^^^^^^^^^^^^ ... 92 | fn is_valid_scalar_type(ty: &Type) -> bool { | ^^^^^^^^^^^^^^^^^^^^ ... 111 | fn is_valid_logical_type(ty: &Type) -> bool { | ^^^^^^^^^^^^^^^^^^^^^ ... 130 | fn is_valid_property_type(ty: &Type) -> bool { | ^^^^^^^^^^^^^^^^^^^^^^ ... 148 | fn validate_properties(&mut self, properties: &Properties) -> Result<(), String> { | ^^^^^^^^^^^^^^^^^^^ ... 174 | fn validate_operator(&mut self, operator: &Operator) -> Result<(), String> { | ^^^^^^^^^^^^^^^^^ ... 239 | fn validate_function(&mut self, function: &Function) -> Result<(), String> { | ^^^^^^^^^^^^^^^^^ ... 269 | fn validate_expr(&mut self, expr: &Expr) -> Result<(), String> { | ^^^^^^^^^^^^^ ... 342 | fn validate_pattern(&mut self, pattern: &Pattern) -> Result<(), String> { | ^^^^^^^^^^^^^^^^ ... 370 | pub fn validate_file(&mut self, file: &File) -> Result<(), String> { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/ast.rs#L5: optd-dsl/src/ast.rs#L5
warning: multiple variants are never constructed --> optd-dsl/src/ast.rs:6:5 | 5 | pub enum Type { | ---- variants in this enum 6 | Int64, | ^^^^^ 7 | String, | ^^^^^^ 8 | Bool, | ^^^^ 9 | Float64, | ^^^^^^^ 10 | Array(Box<Type>), // Array types like [T] | ^^^^^ 11 | Map(Box<Type>, Box<Type>), // Map types like map[K->V] | ^^^ 12 | Tuple(Vec<Type>), // Tuple types like (T1, T2) | ^^^^^ 13 | Function(Box<Type>, Box<Type>), // Function types like (T1)->T2 | ^^^^^^^^ 14 | Operator(OperatorKind), // Operator types (scalar/logical) | ^^^^^^^^ | = note: `Type` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L19: optd-dsl/src/ast.rs#L19
warning: variants `Scalar` and `Logical` are never constructed --> optd-dsl/src/ast.rs:20:5 | 19 | pub enum OperatorKind { | ------------ variants in this enum 20 | Scalar, // Scalar operators | ^^^^^^ 21 | Logical, // Logical operators with derivable properties | ^^^^^^^ | = note: `OperatorKind` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L26: optd-dsl/src/ast.rs#L26
warning: struct `Field` is never constructed --> optd-dsl/src/ast.rs:26:12 | 26 | pub struct Field { | ^^^^^ | = note: `Field` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L33: optd-dsl/src/ast.rs#L33
warning: struct `Properties` is never constructed --> optd-dsl/src/ast.rs:33:12 | 33 | pub struct Properties { | ^^^^^^^^^^ | = note: `Properties` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L39: optd-dsl/src/ast.rs#L39
warning: enum `Operator` is never used --> optd-dsl/src/ast.rs:39:10 | 39 | pub enum Operator { | ^^^^^^^^ | = note: `Operator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L46: optd-dsl/src/ast.rs#L46
warning: struct `ScalarOp` is never constructed --> optd-dsl/src/ast.rs:46:12 | 46 | pub struct ScalarOp { | ^^^^^^^^ | = note: `ScalarOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L53: optd-dsl/src/ast.rs#L53
warning: struct `LogicalOp` is never constructed --> optd-dsl/src/ast.rs:53:12 | 53 | pub struct LogicalOp { | ^^^^^^^^^ | = note: `LogicalOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L61: optd-dsl/src/ast.rs#L61
warning: enum `Pattern` is never used --> optd-dsl/src/ast.rs:61:10 | 61 | pub enum Pattern { | ^^^^^^^ | = note: `Pattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L74: optd-dsl/src/ast.rs#L74
warning: enum `Literal` is never used --> optd-dsl/src/ast.rs:74:10 | 74 | pub enum Literal { | ^^^^^^^ | = note: `Literal` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L85: optd-dsl/src/ast.rs#L85
warning: enum `Expr` is never used --> optd-dsl/src/ast.rs:85:10 | 85 | pub enum Expr { | ^^^^ | = note: `Expr` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L104: optd-dsl/src/ast.rs#L104
warning: struct `MatchArm` is never constructed --> optd-dsl/src/ast.rs:104:12 | 104 | pub struct MatchArm { | ^^^^^^^^ | = note: `MatchArm` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L111: optd-dsl/src/ast.rs#L111
warning: enum `BinOp` is never used --> optd-dsl/src/ast.rs:111:10 | 111 | pub enum BinOp { | ^^^^^ | = note: `BinOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L130: optd-dsl/src/ast.rs#L130
warning: enum `UnaryOp` is never used --> optd-dsl/src/ast.rs:130:10 | 130 | pub enum UnaryOp { | ^^^^^^^ | = note: `UnaryOp` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L137: optd-dsl/src/ast.rs#L137
warning: struct `Function` is never constructed --> optd-dsl/src/ast.rs:137:12 | 137 | pub struct Function { | ^^^^^^^^ | = note: `Function` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/ast.rs#L147: optd-dsl/src/ast.rs#L147
warning: struct `File` is never constructed --> optd-dsl/src/ast.rs:147:12 | 147 | pub struct File { | ^^^^ | = note: `File` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[clippy] optd-dsl/src/parser/mod.rs#L21: optd-dsl/src/parser/mod.rs#L21
warning: struct `DslParser` is never constructed --> optd-dsl/src/parser/mod.rs:21:12 | 21 | pub struct DslParser; | ^^^^^^^^^
[clippy] optd-dsl/src/parser/mod.rs#L30: optd-dsl/src/parser/mod.rs#L30
warning: function `parse_file` is never used --> optd-dsl/src/parser/mod.rs:30:8 | 30 | pub fn parse_file(input: &str) -> Result<File, Box<Error<Rule>>> { | ^^^^^^^^^^
[clippy] optd-dsl/src/parser/mod.rs#L67: optd-dsl/src/parser/mod.rs#L67
warning: function `parse_properties_block` is never used --> optd-dsl/src/parser/mod.rs:67:4 | 67 | fn parse_properties_block(pair: Pair<Rule>) -> Properties { | ^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/mod.rs#L86: optd-dsl/src/parser/mod.rs#L86
warning: function `parse_field_def` is never used --> optd-dsl/src/parser/mod.rs:86:15 | 86 | pub(crate) fn parse_field_def(pair: Pair<Rule>) -> Field { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L14: optd-dsl/src/parser/expr.rs#L14
warning: function `parse_expr` is never used --> optd-dsl/src/parser/expr.rs:14:8 | 14 | pub fn parse_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L43: optd-dsl/src/parser/expr.rs#L43
warning: function `parse_closure` is never used --> optd-dsl/src/parser/expr.rs:43:4 | 43 | fn parse_closure(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L61: optd-dsl/src/parser/expr.rs#L61
warning: function `parse_binary_operation` is never used --> optd-dsl/src/parser/expr.rs:61:4 | 61 | fn parse_binary_operation(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L75: optd-dsl/src/parser/expr.rs#L75
warning: function `parse_postfix` is never used --> optd-dsl/src/parser/expr.rs:75:4 | 75 | fn parse_postfix(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L111: optd-dsl/src/parser/expr.rs#L111
warning: function `parse_prefix` is never used --> optd-dsl/src/parser/expr.rs:111:4 | 111 | fn parse_prefix(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L129: optd-dsl/src/parser/expr.rs#L129
warning: function `parse_match_expr` is never used --> optd-dsl/src/parser/expr.rs:129:4 | 129 | fn parse_match_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L144: optd-dsl/src/parser/expr.rs#L144
warning: function `parse_match_arm` is never used --> optd-dsl/src/parser/expr.rs:144:4 | 144 | fn parse_match_arm(pair: Pair<'_, Rule>) -> MatchArm { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L152: optd-dsl/src/parser/expr.rs#L152
warning: function `parse_if_expr` is never used --> optd-dsl/src/parser/expr.rs:152:4 | 152 | fn parse_if_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L166: optd-dsl/src/parser/expr.rs#L166
warning: function `parse_val_expr` is never used --> optd-dsl/src/parser/expr.rs:166:4 | 166 | fn parse_val_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L176: optd-dsl/src/parser/expr.rs#L176
warning: function `parse_array_literal` is never used --> optd-dsl/src/parser/expr.rs:176:4 | 176 | fn parse_array_literal(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L182: optd-dsl/src/parser/expr.rs#L182
warning: function `parse_tuple_literal` is never used --> optd-dsl/src/parser/expr.rs:182:4 | 182 | fn parse_tuple_literal(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L188: optd-dsl/src/parser/expr.rs#L188
warning: function `parse_constructor` is never used --> optd-dsl/src/parser/expr.rs:188:4 | 188 | fn parse_constructor(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L203: optd-dsl/src/parser/expr.rs#L203
warning: function `parse_number` is never used --> optd-dsl/src/parser/expr.rs:203:4 | 203 | fn parse_number(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L209: optd-dsl/src/parser/expr.rs#L209
warning: function `parse_string` is never used --> optd-dsl/src/parser/expr.rs:209:4 | 209 | fn parse_string(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L215: optd-dsl/src/parser/expr.rs#L215
warning: function `parse_boolean` is never used --> optd-dsl/src/parser/expr.rs:215:4 | 215 | fn parse_boolean(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L221: optd-dsl/src/parser/expr.rs#L221
warning: function `parse_fail_expr` is never used --> optd-dsl/src/parser/expr.rs:221:4 | 221 | fn parse_fail_expr(pair: Pair<'_, Rule>) -> Expr { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/expr.rs#L227: optd-dsl/src/parser/expr.rs#L227
warning: function `parse_binary_operator` is never used --> optd-dsl/src/parser/expr.rs:227:4 | 227 | fn parse_binary_operator(pair: Pair<'_, Rule>) -> BinOp { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/functions.rs#L16: optd-dsl/src/parser/functions.rs#L16
warning: function `parse_function_def` is never used --> optd-dsl/src/parser/functions.rs:16:8 | 16 | pub fn parse_function_def(pair: Pair<'_, Rule>) -> Function { | ^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/functions.rs#L57: optd-dsl/src/parser/functions.rs#L57
warning: function `parse_params` is never used --> optd-dsl/src/parser/functions.rs:57:4 | 57 | fn parse_params(pair: Pair<'_, Rule>) -> Vec<(String, Type)> { | ^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/functions.rs#L71: optd-dsl/src/parser/functions.rs#L71
warning: function `parse_param` is never used --> optd-dsl/src/parser/functions.rs:71:4 | 71 | fn parse_param(pair: Pair<'_, Rule>) -> (String, Type) { | ^^^^^^^^^^^
[clippy] optd-dsl/src/parser/functions.rs#L94: optd-dsl/src/parser/functions.rs#L94
warning: function `parse_rule_annotation` is never used --> optd-dsl/src/parser/functions.rs:94:4 | 94 | fn parse_rule_annotation(pair: Pair<'_, Rule>) -> OperatorKind { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L14: optd-dsl/src/parser/operators.rs#L14
warning: function `parse_operator_def` is never used --> optd-dsl/src/parser/operators.rs:14:8 | 14 | pub fn parse_operator_def(pair: Pair<'_, Rule>) -> Operator { | ^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L45: optd-dsl/src/parser/operators.rs#L45
warning: function `parse_operator_type` is never used --> optd-dsl/src/parser/operators.rs:45:4 | 45 | fn parse_operator_type(pair: Pair<'_, Rule>) -> OperatorKind { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L54: optd-dsl/src/parser/operators.rs#L54
warning: function `parse_field_def_list` is never used --> optd-dsl/src/parser/operators.rs:54:4 | 54 | fn parse_field_def_list(pair: Pair<'_, Rule>) -> Vec<Field> { | ^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L59: optd-dsl/src/parser/operators.rs#L59
warning: function `parse_derive_props_block` is never used --> optd-dsl/src/parser/operators.rs:59:4 | 59 | fn parse_derive_props_block(pair: Pair<'_, Rule>) -> HashMap<String, Expr> { | ^^^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L73: optd-dsl/src/parser/operators.rs#L73
warning: function `parse_prop_derivation` is never used --> optd-dsl/src/parser/operators.rs:73:4 | 73 | fn parse_prop_derivation(pair: Pair<'_, Rule>) -> (String, Expr) { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/operators.rs#L96: optd-dsl/src/parser/operators.rs#L96
warning: function `create_operator` is never used --> optd-dsl/src/parser/operators.rs:96:4 | 96 | fn create_operator( | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/patterns.rs#L13: optd-dsl/src/parser/patterns.rs#L13
warning: function `parse_pattern` is never used --> optd-dsl/src/parser/patterns.rs:13:8 | 13 | pub fn parse_pattern(pair: Pair<'_, Rule>) -> Pattern { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/patterns.rs#L41: optd-dsl/src/parser/patterns.rs#L41
warning: function `parse_constructor_pattern` is never used --> optd-dsl/src/parser/patterns.rs:41:4 | 41 | fn parse_constructor_pattern(pair: Pair<'_, Rule>) -> Pattern { | ^^^^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/patterns.rs#L74: optd-dsl/src/parser/patterns.rs#L74
warning: function `parse_literal_pattern` is never used --> optd-dsl/src/parser/patterns.rs:74:4 | 74 | fn parse_literal_pattern(pair: Pair<'_, Rule>) -> Pattern { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/patterns.rs#L80: optd-dsl/src/parser/patterns.rs#L80
warning: function `parse_literal` is never used --> optd-dsl/src/parser/patterns.rs:80:4 | 80 | fn parse_literal(pair: Pair<'_, Rule>) -> Literal { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L14: optd-dsl/src/parser/types.rs#L14
warning: function `parse_type_expr` is never used --> optd-dsl/src/parser/types.rs:14:8 | 14 | pub fn parse_type_expr(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L28: optd-dsl/src/parser/types.rs#L28
warning: function `parse_base_type` is never used --> optd-dsl/src/parser/types.rs:28:4 | 28 | fn parse_base_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L39: optd-dsl/src/parser/types.rs#L39
warning: function `parse_array_type` is never used --> optd-dsl/src/parser/types.rs:39:4 | 39 | fn parse_array_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L45: optd-dsl/src/parser/types.rs#L45
warning: function `parse_map_type` is never used --> optd-dsl/src/parser/types.rs:45:4 | 45 | fn parse_map_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L53: optd-dsl/src/parser/types.rs#L53
warning: function `parse_tuple_type` is never used --> optd-dsl/src/parser/types.rs:53:4 | 53 | fn parse_tuple_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L59: optd-dsl/src/parser/types.rs#L59
warning: function `parse_function_type` is never used --> optd-dsl/src/parser/types.rs:59:4 | 59 | fn parse_function_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/parser/types.rs#L67: optd-dsl/src/parser/types.rs#L67
warning: function `parse_operator_type` is never used --> optd-dsl/src/parser/types.rs:67:4 | 67 | fn parse_operator_type(pair: Pair<'_, Rule>) -> Type { | ^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L70: optd-dsl/src/gen/operator.rs#L70
warning: function `generate_logical_enum` is never used --> optd-dsl/src/gen/operator.rs:70:4 | 70 | fn generate_logical_enum(operators: &[LogicalOp]) -> TokenStream { | ^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L111: optd-dsl/src/gen/operator.rs#L111
warning: function `generate_scalar_enum` is never used --> optd-dsl/src/gen/operator.rs:111:4 | 111 | fn generate_scalar_enum(operators: &[ScalarOp]) -> TokenStream { | ^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L151: optd-dsl/src/gen/operator.rs#L151
warning: function `generate_code` is never used --> optd-dsl/src/gen/operator.rs:151:4 | 151 | fn generate_code(operators: &[Operator]) -> TokenStream { | ^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L216: optd-dsl/src/gen/operator.rs#L216
warning: function `generate_scalar_operator` is never used --> optd-dsl/src/gen/operator.rs:216:4 | 216 | fn generate_scalar_operator(operator: &ScalarOp) -> TokenStream { | ^^^^^^^^^^^^^^^^^^^^^^^^
[clippy] optd-dsl/src/gen/operator.rs#L155: optd-dsl/src/gen/operator.rs#L155
warning: this `.into_iter()` call is equivalent to `.iter()` and will not consume the `slice` --> optd-dsl/src/gen/operator.rs:155:31 | 155 | for operator in operators.into_iter().cloned() { | ^^^^^^^^^ help: call directly: `iter` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#into_iter_on_ref = note: `#[warn(clippy::into_iter_on_ref)]` on by default