difftreelog
style fix clippy warnings
in: master
6 files changed
Cargo.lockdiffbeforeafterboth--- a/Cargo.lock
+++ b/Cargo.lock
@@ -261,7 +261,7 @@
[[package]]
name = "jrsonnet"
-version = "0.5.0"
+version = "0.5.0-pre7"
dependencies = [
"clap",
"clap_complete",
@@ -275,7 +275,7 @@
[[package]]
name = "jrsonnet-cli"
-version = "0.5.0"
+version = "0.5.0-pre7"
dependencies = [
"clap",
"jrsonnet-evaluator",
@@ -286,7 +286,7 @@
[[package]]
name = "jrsonnet-evaluator"
-version = "0.5.0"
+version = "0.5.0-pre7"
dependencies = [
"annotate-snippets",
"anyhow",
@@ -330,7 +330,7 @@
[[package]]
name = "jrsonnet-interner"
-version = "0.5.0"
+version = "0.5.0-pre7"
dependencies = [
"hashbrown 0.13.2",
"jrsonnet-gcmodule",
@@ -341,7 +341,7 @@
[[package]]
name = "jrsonnet-macros"
-version = "0.5.0"
+version = "0.5.0-pre7"
dependencies = [
"proc-macro2",
"quote",
@@ -350,7 +350,7 @@
[[package]]
name = "jrsonnet-parser"
-version = "0.5.0"
+version = "0.5.0-pre7"
dependencies = [
"jrsonnet-gcmodule",
"jrsonnet-interner",
@@ -362,7 +362,7 @@
[[package]]
name = "jrsonnet-stdlib"
-version = "0.5.0"
+version = "0.5.0-pre7"
dependencies = [
"base64",
"bincode",
@@ -381,7 +381,7 @@
[[package]]
name = "jrsonnet-types"
-version = "0.5.0"
+version = "0.5.0-pre7"
dependencies = [
"jrsonnet-gcmodule",
"peg",
@@ -395,7 +395,7 @@
[[package]]
name = "libjsonnet"
-version = "0.5.0"
+version = "0.5.0-pre7"
dependencies = [
"jrsonnet-evaluator",
"jrsonnet-gcmodule",
Cargo.tomldiffbeforeafterboth--- a/Cargo.toml
+++ b/Cargo.toml
@@ -4,13 +4,13 @@
default-members = ["cmds/jrsonnet"]
[workspace.dependencies]
-jrsonnet-evaluator = { path = "./crates/jrsonnet-evaluator", version = "0.5.0" }
-jrsonnet-macros = { path = "./crates/jrsonnet-macros", version = "0.5.0" }
-jrsonnet-parser = { path = "./crates/jrsonnet-parser", version = "0.5.0" }
-jrsonnet-interner = { path = "./crates/jrsonnet-interner", version = "0.5.0" }
-jrsonnet-stdlib = { path = "./crates/jrsonnet-stdlib", version = "0.5.0" }
-jrsonnet-cli = { path = "./crates/jrsonnet-cli", version = "0.5.0" }
-jrsonnet-types = { path = "./crates/jrsonnet-types", version = "0.5.0" }
+jrsonnet-evaluator = { path = "./crates/jrsonnet-evaluator", version = "0.5.0-pre7" }
+jrsonnet-macros = { path = "./crates/jrsonnet-macros", version = "0.5.0-pre7" }
+jrsonnet-parser = { path = "./crates/jrsonnet-parser", version = "0.5.0-pre7" }
+jrsonnet-interner = { path = "./crates/jrsonnet-interner", version = "0.5.0-pre7" }
+jrsonnet-stdlib = { path = "./crates/jrsonnet-stdlib", version = "0.5.0-pre7" }
+jrsonnet-cli = { path = "./crates/jrsonnet-cli", version = "0.5.0-pre7" }
+jrsonnet-types = { path = "./crates/jrsonnet-types", version = "0.5.0-pre7" }
jrsonnet-gcmodule = "0.3.5"
clippy.tomldiffbeforeafterboth--- /dev/null
+++ b/clippy.toml
@@ -0,0 +1 @@
+ignore-interior-mutability = ["jrsonnet_interner::IStr"]
crates/jrsonnet-evaluator/src/arr/mod.rsdiffbeforeafterboth--- a/crates/jrsonnet-evaluator/src/arr/mod.rs
+++ b/crates/jrsonnet-evaluator/src/arr/mod.rs
@@ -234,7 +234,7 @@
}
}
- /// Is this vec supports .get_cheap()?
+ /// Is this vec supports `.get_cheap()?`
pub fn is_cheap(&self) -> bool {
match self {
ArrValue::Eager(_) | ArrValue::Range(..) | ArrValue::Bytes(_) => true,
crates/jrsonnet-stdlib/src/sets.rsdiffbeforeafterboth1use std::cmp::Ordering;23use jrsonnet_evaluator::{4 error::Result,5 function::{builtin, FuncVal},6 operator::evaluate_compare_op,7 val::ArrValue,8 Thunk, Val,9};10use jrsonnet_gcmodule::Cc;11use jrsonnet_parser::BinaryOpType;1213#[builtin]14#[allow(non_snake_case)]15pub fn builtin_set_member(x: Thunk<Val>, arr: ArrValue, keyF: Option<FuncVal>) -> Result<bool> {16 let mut low = 0;17 let mut high = arr.len();1819 let keyF = keyF20 .unwrap_or(FuncVal::Id)21 .into_native::<((Thunk<Val>,), Val)>();2223 let x = keyF(x)?;2425 while low < high {26 let middle = (high + low) / 2;27 let comp = keyF(arr.get_lazy(middle).expect("in bounds"))?;28 match evaluate_compare_op(&comp, &x, BinaryOpType::Lt)? {29 Ordering::Less => low = middle + 1,30 Ordering::Equal => return Ok(true),31 Ordering::Greater => high = middle,32 }33 }34 Ok(false)35}3637#[builtin]38#[allow(non_snake_case)]39pub fn builtin_set_inter(a: ArrValue, b: ArrValue, keyF: Option<FuncVal>) -> Result<ArrValue> {40 let mut a = a.iter_lazy();41 let mut b = b.iter_lazy();4243 let keyF = keyF44 .unwrap_or(FuncVal::identity())45 .into_native::<((Thunk<Val>,), Val)>();46 let keyF = |v| keyF(v);4748 let mut av = a.next();49 let mut bv = b.next();50 let mut ak = av.clone().map(keyF).transpose()?;51 let mut bk = bv.map(keyF).transpose()?;5253 let mut out = Vec::new();54 while let (Some(ac), Some(bc)) = (&ak, &bk) {55 match evaluate_compare_op(ac, bc, BinaryOpType::Lt)? {56 Ordering::Less => {57 av = a.next();58 ak = av.clone().map(keyF).transpose()?;59 }60 Ordering::Greater => {61 bv = b.next();62 bk = bv.map(keyF).transpose()?;63 }64 Ordering::Equal => {65 out.push(av.clone().expect("ak != None => av != None"));66 av = a.next();67 ak = av.clone().map(keyF).transpose()?;68 bv = b.next();69 bk = bv.map(keyF).transpose()?;70 }71 };72 }73 Ok(ArrValue::lazy(Cc::new(out)))74}1use std::cmp::Ordering;23use jrsonnet_evaluator::{4 error::Result,5 function::{builtin, FuncVal},6 operator::evaluate_compare_op,7 val::ArrValue,8 Thunk, Val,9};10use jrsonnet_gcmodule::Cc;11use jrsonnet_parser::BinaryOpType;1213#[builtin]14#[allow(non_snake_case)]15pub fn builtin_set_member(x: Thunk<Val>, arr: ArrValue, keyF: Option<FuncVal>) -> Result<bool> {16 let mut low = 0;17 let mut high = arr.len();1819 let keyF = keyF20 .unwrap_or(FuncVal::Id)21 .into_native::<((Thunk<Val>,), Val)>();2223 let x = keyF(x)?;2425 while low < high {26 let middle = (high + low) / 2;27 let comp = keyF(arr.get_lazy(middle).expect("in bounds"))?;28 match evaluate_compare_op(&comp, &x, BinaryOpType::Lt)? {29 Ordering::Less => low = middle + 1,30 Ordering::Equal => return Ok(true),31 Ordering::Greater => high = middle,32 }33 }34 Ok(false)35}3637#[builtin]38#[allow(non_snake_case, clippy::redundant_closure)]39pub fn builtin_set_inter(a: ArrValue, b: ArrValue, keyF: Option<FuncVal>) -> Result<ArrValue> {40 let mut a = a.iter_lazy();41 let mut b = b.iter_lazy();4243 let keyF = keyF44 .unwrap_or(FuncVal::identity())45 .into_native::<((Thunk<Val>,), Val)>();46 let keyF = |v| keyF(v);4748 let mut av = a.next();49 let mut bv = b.next();50 let mut ak = av.clone().map(keyF).transpose()?;51 let mut bk = bv.map(keyF).transpose()?;5253 let mut out = Vec::new();54 while let (Some(ac), Some(bc)) = (&ak, &bk) {55 match evaluate_compare_op(ac, bc, BinaryOpType::Lt)? {56 Ordering::Less => {57 av = a.next();58 ak = av.clone().map(keyF).transpose()?;59 }60 Ordering::Greater => {61 bv = b.next();62 bk = bv.map(keyF).transpose()?;63 }64 Ordering::Equal => {65 out.push(av.clone().expect("ak != None => av != None"));66 av = a.next();67 ak = av.clone().map(keyF).transpose()?;68 bv = b.next();69 bk = bv.map(keyF).transpose()?;70 }71 };72 }73 Ok(ArrValue::lazy(Cc::new(out)))74}crates/jrsonnet-stdlib/src/sort.rsdiffbeforeafterboth--- a/crates/jrsonnet-stdlib/src/sort.rs
+++ b/crates/jrsonnet-stdlib/src/sort.rs
@@ -71,7 +71,7 @@
keyf.evaluate_simple(&(value.clone(),), false)?,
));
}
- let sort_type = get_sort_type(&mut vk, |v| &v.1)?;
+ let sort_type = get_sort_type(&vk, |v| &v.1)?;
match sort_type {
SortKeyType::Number => vk.sort_by_key(|v| match v.1 {
Val::Num(n) => NonNaNf64(n),
@@ -106,10 +106,10 @@
if arr.len() <= 1 {
return Ok(arr);
}
- Ok(super::sort::sort(
+ super::sort::sort(
arr,
keyF.unwrap_or_else(FuncVal::identity),
- )?)
+ )
}
fn uniq_identity(arr: Vec<Val>) -> Result<Vec<Val>> {
@@ -129,7 +129,7 @@
let mut out = Vec::new();
let last_value = arr.get_lazy(0).unwrap();
let mut last_key = keyf.evaluate_simple(&(last_value.clone(),), false)?;
- out.push(last_value.clone());
+ out.push(last_value);
for next in arr.iter_lazy().skip(1) {
let next_key = keyf.evaluate_simple(&(next.clone(),), false)?;