refactor: use State::import(..)
for file-sourced TLAs
#135
clippy
22 warnings
Details
Results
Message level | Amount |
---|---|
Internal compiler error | 0 |
Error | 0 |
Warning | 22 |
Note | 0 |
Help | 0 |
Versions
- rustc 1.75.0-nightly (2f1bd0729 2023-10-27)
- cargo 1.75.0-nightly (df3509237 2023-10-24)
- clippy 0.1.75 (2f1bd07 2023-10-27)
Annotations
Check warning on line 50 in crates/jrsonnet-stdlib/src/misc.rs
github-actions / clippy
redundant closure
warning: redundant closure
--> crates/jrsonnet-stdlib/src/misc.rs:50:22
|
50 | .map_or(Val::Null, |v| Val::Func(v))
| ^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `Val::Func`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure
= note: `#[warn(clippy::redundant_closure)]` on by default
Check warning on line 42 in crates/jrsonnet-stdlib/src/encoding.rs
github-actions / clippy
question mark operator is useless here
warning: question mark operator is useless here
--> crates/jrsonnet-stdlib/src/encoding.rs:42:2
|
42 | Ok(String::from_utf8(bytes).map_err(|_| runtime_error!("bad utf8"))?)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing question mark and `Ok()`: `String::from_utf8(bytes).map_err(|_| runtime_error!("bad utf8"))`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark
= note: `#[warn(clippy::needless_question_mark)]` on by default
Check warning on line 93 in crates/jrsonnet-evaluator/src/typed/mod.rs
github-actions / clippy
matching over `()` is more explicit
warning: matching over `()` is more explicit
--> crates/jrsonnet-evaluator/src/typed/mod.rs:93:6
|
93 | Ok(_) => Ok(()),
| ^ help: use `()` instead of `_`: `()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ignored_unit_patterns
Check warning on line 454 in crates/jrsonnet-evaluator/src/typed/conversions.rs
github-actions / clippy
you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`
warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`
--> crates/jrsonnet-evaluator/src/typed/conversions.rs:436:3
|
436 | / match &value {
437 | | Val::Arr(a) => {
438 | | if let Some(bytes) = a.as_any().downcast_ref::<BytesArray>() {
439 | | return Ok(bytes.0.as_slice().into());
... |
453 | | }
454 | | }
| |_________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match_else
= note: `#[warn(clippy::single_match_else)]` implied by `#[warn(clippy::pedantic)]`
help: try
|
436 ~ if let Val::Arr(a) = &value {
437 ~ if let Some(bytes) = a.as_any().downcast_ref::<BytesArray>() {
438 ~ return Ok(bytes.0.as_slice().into());
439 ~ };
440 ~ <Self as Typed>::TYPE.check(&value)?;
441 ~ // Any::downcast_ref::<ByteArray>(&a);
442 ~ let mut out = Vec::with_capacity(a.len());
443 ~ for e in a.iter() {
444 ~ let r = e?;
445 ~ out.push(u8::from_untyped(r)?);
446 ~ }
447 ~ Ok(out.as_slice().into())
448 ~ } else {
449 ~ <Self as Typed>::TYPE.check(&value)?;
450 ~ unreachable!()
451 ~ }
|
Check warning on line 251 in crates/jrsonnet-evaluator/src/stdlib/format.rs
github-actions / clippy
matching over `()` is more explicit
warning: matching over `()` is more explicit
--> crates/jrsonnet-evaluator/src/stdlib/format.rs:251:7
|
251 | let (_, str) = try_parse_length_modifier(str)?;
| ^ help: use `()` instead of `_`: `()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ignored_unit_patterns
Check warning on line 637 in crates/jrsonnet-evaluator/src/obj.rs
github-actions / clippy
redundant clone
warning: redundant clone
--> crates/jrsonnet-evaluator/src/obj.rs:637:31
|
637 | let entry = out.entry(name.clone());
| ^^^^^^^^ help: remove this
|
note: this value is dropped without further use
--> crates/jrsonnet-evaluator/src/obj.rs:637:27
|
637 | let entry = out.entry(name.clone());
| ^^^^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_clone
Check warning on line 498 in crates/jrsonnet-evaluator/src/obj.rs
github-actions / clippy
redundant clone
warning: redundant clone
--> crates/jrsonnet-evaluator/src/obj.rs:498:31
|
498 | let entry = out.entry(name.clone());
| ^^^^^^^^ help: remove this
|
note: this value is dropped without further use
--> crates/jrsonnet-evaluator/src/obj.rs:498:27
|
498 | let entry = out.entry(name.clone());
| ^^^^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_clone
Check warning on line 477 in crates/jrsonnet-evaluator/src/obj.rs
github-actions / clippy
question mark operator is useless here
warning: question mark operator is useless here
--> crates/jrsonnet-evaluator/src/obj.rs:477:5
|
477 | Ok(self.obj.get_or_bail(self.key)?)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing question mark and `Ok()`: `self.obj.get_or_bail(self.key)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark
= note: `#[warn(clippy::needless_question_mark)]` implied by `#[warn(clippy::all)]`
Check warning on line 398 in crates/jrsonnet-evaluator/src/obj.rs
github-actions / clippy
use of `unwrap_or` followed by a function call
warning: use of `unwrap_or` followed by a function call
--> crates/jrsonnet-evaluator/src/obj.rs:398:35
|
398 | self.get_for(key, self.0.this().unwrap_or(self.clone()))
| ^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_else(|| self.clone())`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call
= note: `#[warn(clippy::or_fun_call)]` implied by `#[warn(clippy::nursery)]`
Check warning on line 350 in crates/jrsonnet-evaluator/src/obj.rs
github-actions / clippy
consider adding a `;` to the last statement for consistent formatting
warning: consider adding a `;` to the last statement for consistent formatting
--> crates/jrsonnet-evaluator/src/obj.rs:350:4
|
350 | member = member.add()
| ^^^^^^^^^^^^^^^^^^^^^ help: add a `;` here: `member = member.add();`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#semicolon_if_nothing_returned
= note: `#[warn(clippy::semicolon_if_nothing_returned)]` implied by `#[warn(clippy::pedantic)]`
Check warning on line 176 in crates/jrsonnet-evaluator/src/obj.rs
github-actions / clippy
manual `Debug` impl does not include all fields
warning: manual `Debug` impl does not include all fields
--> crates/jrsonnet-evaluator/src/obj.rs:166:1
|
166 | / impl Debug for OopObject {
167 | | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
168 | | f.debug_struct("OopObject")
169 | | .field("sup", &self.sup)
... |
175 | | }
176 | | }
| |_^
|
note: this field is unused
--> crates/jrsonnet-evaluator/src/obj.rs:161:2
|
161 | assertions: Cc<Vec<TraceBox<dyn ObjectAssertion>>>,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: this field is unused
--> crates/jrsonnet-evaluator/src/obj.rs:162:2
|
162 | assertions_ran: RefCell<GcHashSet<ObjValue>>,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
note: this field is unused
--> crates/jrsonnet-evaluator/src/obj.rs:164:2
|
164 | value_cache: RefCell<GcHashMap<(IStr, Option<WeakObjValue>), CacheValue>>,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
= help: consider including all fields in this `Debug` impl
= help: consider calling `.finish_non_exhaustive()` if you intend to ignore fields
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_fields_in_debug
= note: `#[warn(clippy::missing_fields_in_debug)]` implied by `#[warn(clippy::pedantic)]`
Check warning on line 306 in crates/jrsonnet-evaluator/src/manifest.rs
github-actions / clippy
this function has too many lines (118/100)
warning: this function has too many lines (118/100)
--> crates/jrsonnet-evaluator/src/manifest.rs:178:1
|
178 | / fn manifest_json_ex_buf(
179 | | val: &Val,
180 | | buf: &mut String,
181 | | cur_padding: &mut String,
... |
305 | | Ok(())
306 | | }
| |_^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_lines
= note: `#[warn(clippy::too_many_lines)]` implied by `#[warn(clippy::pedantic)]`
Check warning on line 167 in crates/jrsonnet-evaluator/src/integrations/serde.rs
github-actions / clippy
unnecessary `!=` operation
warning: unnecessary `!=` operation
--> crates/jrsonnet-evaluator/src/integrations/serde.rs:162:5
|
162 | / if n.fract() != 0.0 {
163 | | serializer.serialize_f64(*n)
164 | | } else {
165 | | let n = *n as i64;
166 | | serializer.serialize_i64(n)
167 | | }
| |_________________^
|
= help: change to `==` and swap the blocks of the `if`/`else`
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#if_not_else
= note: `#[warn(clippy::if_not_else)]` implied by `#[warn(clippy::pedantic)]`
Check warning on line 90 in crates/jrsonnet-evaluator/src/function/builtin.rs
github-actions / clippy
redundant clone
warning: redundant clone
--> crates/jrsonnet-evaluator/src/function/builtin.rs:90:36
|
90 | name: ParamName::new_dynamic(n.to_string()),
| ^^^^^^^^^^^^ help: remove this
|
note: this value is dropped without further use
--> crates/jrsonnet-evaluator/src/function/builtin.rs:90:35
|
90 | name: ParamName::new_dynamic(n.to_string()),
| ^
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_clone
= note: `#[warn(clippy::redundant_clone)]` implied by `#[warn(clippy::nursery)]`
Check warning on line 33 in crates/jrsonnet-evaluator/src/function/builtin.rs
github-actions / clippy
use Option::map_or instead of an if let/else
warning: use Option::map_or instead of an if let/else
--> crates/jrsonnet-evaluator/src/function/builtin.rs:30:3
|
30 | / match &self.0 {
31 | | Some(s) => s.as_bytes() == other.as_bytes(),
32 | | None => false,
33 | | }
| |_________^ help: try: `self.0.as_ref().map_or(false, |s| s.as_bytes() == other.as_bytes())`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_if_let_else
= note: `#[warn(clippy::option_if_let_else)]` implied by `#[warn(clippy::nursery)]`
Check warning on line 9 in crates/jrsonnet-evaluator/src/function/builtin.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> crates/jrsonnet-evaluator/src/function/builtin.rs:9:45
|
9 | /// Can't have str | IStr, because constant BuiltinParam causes
| ^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
9 | /// Can't have str | IStr, because constant `BuiltinParam` causes
| ~~~~~~~~~~~~~~
Check warning on line 9 in crates/jrsonnet-evaluator/src/function/builtin.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> crates/jrsonnet-evaluator/src/function/builtin.rs:9:22
|
9 | /// Can't have str | IStr, because constant BuiltinParam causes
| ^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
= note: `#[warn(clippy::doc_markdown)]` implied by `#[warn(clippy::pedantic)]`
help: try
|
9 | /// Can't have str | `IStr`, because constant BuiltinParam causes
| ~~~~~~
Check warning on line 92 in crates/jrsonnet-evaluator/src/evaluate/mod.rs
github-actions / clippy
accessing first element with `specs.get(0)`
warning: accessing first element with `specs.get(0)`
--> crates/jrsonnet-evaluator/src/evaluate/mod.rs:92:8
|
92 | match specs.get(0) {
| ^^^^^^^^^^^^ help: try: `specs.first()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#get_first
note: the lint level is defined here
--> crates/jrsonnet-evaluator/src/lib.rs:5:2
|
5 | clippy::all,
| ^^^^^^^^^^^
= note: `#[warn(clippy::get_first)]` implied by `#[warn(clippy::all)]`
Check warning on line 11 in crates/jrsonnet-evaluator/src/lib.rs
github-actions / clippy
pub(crate) import inside private module
warning: pub(crate) import inside private module
--> crates/jrsonnet-evaluator/src/lib.rs:1:1
|
1 | / //! jsonnet interpreter implementation
2 | | #![cfg_attr(feature = "nightly", feature(thread_local, type_alias_impl_trait))]
3 | | #![deny(unsafe_op_in_unsafe_fn)]
4 | | #![warn(
... |
10 | | explicit_outlives_requirements,
11 | | noop_method_call,
| |_
|
::: crates/jrsonnet-evaluator/src/arr/mod.rs:11:1
|
11 | pub(crate) use spec::*;
| ---------- help: consider using: `pub`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_pub_crate
= note: `#[warn(clippy::redundant_pub_crate)]` implied by `#[warn(clippy::nursery)]`
Check warning on line 511 in crates/jrsonnet-evaluator/src/arr/spec.rs
github-actions / clippy
matching over `()` is more explicit
warning: matching over `()` is more explicit
--> crates/jrsonnet-evaluator/src/arr/spec.rs:511:24
|
511 | ArrayThunk::Waiting(_) | ArrayThunk::Pending => {}
| ^ help: use `()` instead of `_`: `()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ignored_unit_patterns
Check warning on line 464 in crates/jrsonnet-evaluator/src/arr/spec.rs
github-actions / clippy
matching over `()` is more explicit
warning: matching over `()` is more explicit
--> crates/jrsonnet-evaluator/src/arr/spec.rs:464:27
|
464 | let ArrayThunk::Waiting(_) =
| ^ help: use `()` instead of `_`: `()`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ignored_unit_patterns
note: the lint level is defined here
--> crates/jrsonnet-evaluator/src/lib.rs:7:2
|
7 | clippy::pedantic,
| ^^^^^^^^^^^^^^^^
= note: `#[warn(clippy::ignored_unit_patterns)]` implied by `#[warn(clippy::pedantic)]`
Check warning on line 375 in crates/jrsonnet-evaluator/src/arr/spec.rs
github-actions / clippy
this bound is already specified as the supertrait of `ExactSizeIterator`
warning: this bound is already specified as the supertrait of `ExactSizeIterator`
--> crates/jrsonnet-evaluator/src/arr/spec.rs:375:26
|
375 | fn range(&self) -> impl Iterator<Item = i32> + ExactSizeIterator + DoubleEndedIterator {
| ^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#implied_bounds_in_impls
note: the lint level is defined here
--> crates/jrsonnet-evaluator/src/lib.rs:6:2
|
6 | clippy::nursery,
| ^^^^^^^^^^^^^^^
= note: `#[warn(clippy::implied_bounds_in_impls)]` implied by `#[warn(clippy::nursery)]`
help: try removing this bound
|
375 - fn range(&self) -> impl Iterator<Item = i32> + ExactSizeIterator + DoubleEndedIterator {
375 + fn range(&self) -> impl ExactSizeIterator<Item = i32> + DoubleEndedIterator {
|