difftreelog
style fix clippy warnings
in: master
3 files changed
crates/jrsonnet-evaluator/src/gc.rsdiffbeforeafterboth1/// Macros to help deal with Gc2use std::{3 borrow::{Borrow, BorrowMut},4 hash::BuildHasherDefault,5 ops::{Deref, DerefMut},6};78use gcmodule::{Trace, Tracer};9use rustc_hash::{FxHashMap, FxHashSet};1011/// Replacement for box, which assumes that the underlying type is [`Trace`]12#[derive(Debug, Clone)]13pub struct TraceBox<T: ?Sized>(pub Box<T>);1415impl<T: ?Sized + Trace> Trace for TraceBox<T> {16 fn trace(&self, tracer: &mut Tracer) {17 self.0.trace(tracer)18 }1920 fn is_type_tracked() -> bool {21 return true;22 }23}2425// TODO: Replace with CoerceUnsized26impl<T: ?Sized> From<Box<T>> for TraceBox<T> {27 fn from(inner: Box<T>) -> Self {28 Self(inner)29 }30}3132impl<T: ?Sized> Deref for TraceBox<T> {33 type Target = T;3435 fn deref(&self) -> &Self::Target {36 &self.037 }38}39impl<T: Trace + ?Sized> DerefMut for TraceBox<T> {40 fn deref_mut(&mut self) -> &mut Self::Target {41 &mut self.042 }43}4445impl<T: ?Sized> Borrow<T> for TraceBox<T> {46 fn borrow(&self) -> &T {47 &*self.048 }49}5051impl<T: ?Sized> BorrowMut<T> for TraceBox<T> {52 fn borrow_mut(&mut self) -> &mut T {53 &mut *self.054 }55}5657impl<T: ?Sized> AsRef<T> for TraceBox<T> {58 fn as_ref(&self) -> &T {59 &*self.060 }61}6263impl<T: ?Sized> AsMut<T> for TraceBox<T> {64 fn as_mut(&mut self) -> &mut T {65 &mut *self.066 }67}6869#[derive(Clone)]70pub struct GcHashSet<V>(pub FxHashSet<V>);71impl<V> GcHashSet<V> {72 pub fn new() -> Self {73 Self(Default::default())74 }75 pub fn with_capacity(capacity: usize) -> Self {76 Self(FxHashSet::with_capacity_and_hasher(77 capacity,78 BuildHasherDefault::default(),79 ))80 }81}82impl<V> Trace for GcHashSet<V>83where84 V: Trace,85{86 fn trace(&self, tracer: &mut gcmodule::Tracer) {87 for v in &self.0 {88 v.trace(tracer);89 }90 }91}92impl<V> Deref for GcHashSet<V> {93 type Target = FxHashSet<V>;9495 fn deref(&self) -> &Self::Target {96 &self.097 }98}99impl<V> DerefMut for GcHashSet<V> {100 fn deref_mut(&mut self) -> &mut Self::Target {101 &mut self.0102 }103}104105#[derive(Clone)]106pub struct GcHashMap<K, V>(pub FxHashMap<K, V>);107impl<K, V> GcHashMap<K, V> {108 pub fn new() -> Self {109 Self(Default::default())110 }111 pub fn with_capacity(capacity: usize) -> Self {112 Self(FxHashMap::with_capacity_and_hasher(113 capacity,114 BuildHasherDefault::default(),115 ))116 }117}118impl<K, V> Trace for GcHashMap<K, V>119where120 K: Trace,121 V: Trace,122{123 fn trace(&self, tracer: &mut gcmodule::Tracer) {124 for (k, v) in &self.0 {125 k.trace(tracer);126 v.trace(tracer);127 }128 }129}130impl<K, V> Deref for GcHashMap<K, V> {131 type Target = FxHashMap<K, V>;132133 fn deref(&self) -> &Self::Target {134 &self.0135 }136}137impl<K, V> DerefMut for GcHashMap<K, V> {138 fn deref_mut(&mut self) -> &mut Self::Target {139 &mut self.0140 }141}crates/jrsonnet-evaluator/src/lib.rsdiffbeforeafterboth--- a/crates/jrsonnet-evaluator/src/lib.rs
+++ b/crates/jrsonnet-evaluator/src/lib.rs
@@ -125,6 +125,7 @@
evaluated: Option<Val>,
}
+#[allow(clippy::type_complexity)]
pub struct Breakpoint {
loc: ExprLocation,
collected: RefCell<HashMap<usize, (usize, Vec<Result<Val>>)>>,
@@ -254,7 +255,7 @@
ro_map.get(name).map(|value| value.source_code.clone())
}
pub fn map_source_locations(&self, file: &Path, locs: &[usize]) -> Vec<CodeLocation> {
- offset_to_location(&self.get_source(file).unwrap_or("".into()), locs)
+ offset_to_location(&self.get_source(file).unwrap_or_else(|| "".into()), locs)
}
pub fn map_from_source_location(
&self,
@@ -396,7 +397,7 @@
data.stack_generation += 1;
result = data
.breakpoints
- .insert(data.stack_depth, data.stack_generation, &e, result);
+ .insert(data.stack_depth, data.stack_generation, e, result);
}
if let Err(mut err) = result {
err.trace_mut().0.push(StackTraceElement {
@@ -486,7 +487,7 @@
pub fn manifest(&self, val: Val) -> Result<IStr> {
self.run_in_state(|| {
push_description_frame(
- || format!("manifestification"),
+ || "manifestification".to_string(),
|| val.manifest(&self.manifest_format()),
)
})
@@ -640,8 +641,8 @@
}
pub fn cc_ptr_eq<T>(a: &Cc<T>, b: &Cc<T>) -> bool {
- let a = &a as &T;
- let b = &b as &T;
+ let a = a as &T;
+ let b = b as &T;
std::ptr::eq(a, b)
}
crates/jrsonnet-evaluator/src/obj.rsdiffbeforeafterboth--- a/crates/jrsonnet-evaluator/src/obj.rs
+++ b/crates/jrsonnet-evaluator/src/obj.rs
@@ -123,7 +123,7 @@
}
}
for (name, member) in self.0.this_entries.iter() {
- if handler(name, &member) {
+ if handler(name, member) {
return true;
}
}