Skip to content

Commit 4637cbf

Browse files
authored
Apply clippy lints (#278)
1 parent d57bfb8 commit 4637cbf

File tree

10 files changed

+43
-61
lines changed

10 files changed

+43
-61
lines changed

core/document/src/document.rs

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,6 @@ impl Document {
6767
/// Checks whether each layer under `path` intersects with the provided `quad` and adds all intersection layers as paths to `intersections`.
6868
pub fn intersects_quad(&self, quad: [DVec2; 4], path: &mut Vec<LayerId>, intersections: &mut Vec<Vec<LayerId>>) {
6969
self.document_folder(path).unwrap().intersects_quad(quad, path, intersections);
70-
return;
7170
}
7271

7372
/// Checks whether each layer under the root path intersects with the provided `quad` and returns the paths to all intersecting layers.
@@ -229,7 +228,7 @@ impl Document {
229228

230229
pub fn layer_axis_aligned_bounding_box(&self, path: &[LayerId]) -> Result<Option<[DVec2; 2]>, DocumentError> {
231230
// TODO: Replace with functions of the transform api
232-
if let &[] = path {
231+
if path.is_empty() {
233232
// Special case for root. Root's local is the documents global, so we avoid transforming its transform by itself.
234233
self.layer_local_bounding_box(path)
235234
} else {
@@ -265,13 +264,13 @@ impl Document {
265264
Some(vec![DocumentResponse::DocumentChanged, DocumentResponse::SelectLayer { path }])
266265
}
267266
Operation::AddRect { path, insert_index, transform, style } => {
268-
let id = self.add_layer(&path, Layer::new(LayerDataTypes::Rect(Rect::new()), *transform, *style), *insert_index)?;
267+
let id = self.add_layer(&path, Layer::new(LayerDataTypes::Rect(Rect), *transform, *style), *insert_index)?;
269268
let path = [path.clone(), vec![id]].concat();
270269

271270
Some(vec![DocumentResponse::DocumentChanged, DocumentResponse::SelectLayer { path }])
272271
}
273272
Operation::AddLine { path, insert_index, transform, style } => {
274-
let id = self.add_layer(&path, Layer::new(LayerDataTypes::Line(Line::new()), *transform, *style), *insert_index)?;
273+
let id = self.add_layer(&path, Layer::new(LayerDataTypes::Line(Line), *transform, *style), *insert_index)?;
275274
let path = [path.clone(), vec![id]].concat();
276275

277276
Some(vec![DocumentResponse::DocumentChanged, DocumentResponse::SelectLayer { path }])

core/document/src/layers/folder.rs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,9 +105,7 @@ impl Folder {
105105
pub fn bounding_box(&self, transform: glam::DAffine2) -> Option<[DVec2; 2]> {
106106
let mut layers_non_empty_bounding_boxes = self.layers.iter().filter_map(|layer| layer.bounding_box(transform * layer.transform, layer.style)).peekable();
107107

108-
if layers_non_empty_bounding_boxes.peek().is_none() {
109-
return None;
110-
}
108+
layers_non_empty_bounding_boxes.peek()?;
111109

112110
let mut x_min = f64::MAX;
113111
let mut y_min = f64::MAX;
@@ -128,7 +126,7 @@ impl Folder {
128126
y_max = bounding_box_max.y
129127
}
130128
}
131-
return Some([DVec2::new(x_min, y_min), DVec2::new(x_max, y_max)]);
129+
Some([DVec2::new(x_min, y_min), DVec2::new(x_max, y_max)])
132130
}
133131
}
134132

core/document/src/layers/line.rs

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,8 @@ use super::LayerData;
1111
use serde::{Deserialize, Serialize};
1212
use std::fmt::Write;
1313

14-
#[derive(Debug, Clone, Copy, PartialEq, Deserialize, Serialize)]
15-
pub struct Line {}
16-
17-
impl Line {
18-
pub fn new() -> Line {
19-
Line {}
20-
}
21-
}
14+
#[derive(Debug, Default, Clone, Copy, PartialEq, Deserialize, Serialize)]
15+
pub struct Line;
2216

2317
impl LayerData for Line {
2418
fn to_kurbo_path(&self, transform: glam::DAffine2, _style: style::PathStyle) -> kurbo::BezPath {

core/document/src/layers/mod.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ impl Layer {
135135
name: None,
136136
data,
137137
transform: glam::DAffine2::from_cols_array(&transform),
138-
style: style,
138+
style,
139139
cache: String::new(),
140140
cache_dirty: true,
141141
}
@@ -171,7 +171,7 @@ impl Layer {
171171
*svg += self.render();
172172
}
173173

174-
pub fn to_kurbo_path(&mut self) -> BezPath {
174+
pub fn to_kurbo_path(&self) -> BezPath {
175175
self.data.to_kurbo_path(self.transform, self.style)
176176
}
177177

@@ -198,9 +198,8 @@ impl Layer {
198198
}
199199

200200
pub fn render_as_folder(&mut self, svg: &mut String) {
201-
match &mut self.data {
202-
LayerDataTypes::Folder(f) => f.render(svg, self.transform, self.style),
203-
_ => {}
201+
if let LayerDataTypes::Folder(f) = &mut self.data {
202+
f.render(svg, self.transform, self.style)
204203
}
205204
}
206205
}

core/document/src/layers/rect.rs

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,8 @@ use super::LayerData;
1111
use serde::{Deserialize, Serialize};
1212
use std::fmt::Write;
1313

14-
#[derive(Debug, Clone, PartialEq, Deserialize, Serialize)]
15-
pub struct Rect {}
16-
17-
impl Rect {
18-
pub fn new() -> Rect {
19-
Rect {}
20-
}
21-
}
14+
#[derive(Debug, Default, Clone, PartialEq, Deserialize, Serialize)]
15+
pub struct Rect;
2216

2317
impl LayerData for Rect {
2418
fn to_kurbo_path(&self, transform: glam::DAffine2, _style: style::PathStyle) -> kurbo::BezPath {

core/document/src/layers/shape.rs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,7 @@ impl LayerData for Shape {
3131
let mut path = kurbo::BezPath::new();
3232
let apothem_offset_angle = std::f64::consts::PI / (self.sides as f64);
3333

34-
let relative_points = (0..self.sides)
35-
.map(|i| apothem_offset_angle * ((i * 2 + ((self.sides + 1) % 2)) as f64))
36-
.map(|radians| unit_rotation(radians));
34+
let relative_points = (0..self.sides).map(|i| apothem_offset_angle * ((i * 2 + ((self.sides + 1) % 2)) as f64)).map(unit_rotation);
3735

3836
let (mut min_x, mut min_y, mut max_x, mut max_y) = (f64::MAX, f64::MAX, f64::MIN, f64::MIN);
3937
relative_points.clone().for_each(|p| {
@@ -52,7 +50,7 @@ impl LayerData for Shape {
5250
}
5351
})
5452
.map(|p| DVec2::new(p.x / 2. + 0.5, p.y / 2. + 0.5))
55-
.map(|unit| transform.transform_point2(unit.into()))
53+
.map(|unit| transform.transform_point2(unit))
5654
.map(|pos| kurbo::Point::new(pos.x, pos.y))
5755
.enumerate()
5856
.for_each(|(i, p)| {

core/editor/src/document/document_file.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ impl LayerData {
108108
let offset_transform = DAffine2::from_translation(offset);
109109
let scale_transform = DAffine2::from_scale(DVec2::new(self.scale, self.scale));
110110
let angle_transform = DAffine2::from_angle(self.snapped_angle());
111-
let translation_transform = DAffine2::from_translation(self.translation.into());
111+
let translation_transform = DAffine2::from_translation(self.translation);
112112
scale_transform * offset_transform * angle_transform * scale_transform * translation_transform
113113
}
114114
pub fn calculate_transform(&self) -> DAffine2 {

core/editor/src/document/document_message_handler.rs

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,7 @@ impl DocumentMessageHandler {
110110
self.active_document().layer_data.get(path).expect("Layerdata does not exist")
111111
}
112112
fn layerdata_mut(&mut self, path: &[LayerId]) -> &mut LayerData {
113-
self.active_document_mut().layer_data.entry(path.to_vec()).or_insert(LayerData::new(true))
113+
self.active_document_mut().layer_data.entry(path.to_vec()).or_insert_with(|| LayerData::new(true))
114114
}
115115
#[allow(dead_code)]
116116
fn create_transform_from_layerdata(&self, path: Vec<u64>, responses: &mut VecDeque<Message>) {
@@ -124,8 +124,8 @@ impl DocumentMessageHandler {
124124
);
125125
}
126126
fn create_document_transform_from_layerdata(&self, viewport_size: &ViewportPosition, responses: &mut VecDeque<Message>) {
127-
let half_viewport = viewport_size.to_dvec2() / 2.;
128-
let layerdata = self.layerdata(&vec![]);
127+
let half_viewport = viewport_size.as_dvec2() / 2.;
128+
let layerdata = self.layerdata(&[]);
129129
let scaled_half_viewport = half_viewport / layerdata.scale;
130130
responses.push_back(
131131
DocumentOperation::SetLayerTransform {
@@ -159,7 +159,7 @@ impl DocumentMessageHandler {
159159
.collect();
160160

161161
layers_with_indices.sort_by_key(|(_, indices)| indices.clone());
162-
return layers_with_indices.into_iter().map(|(path, _)| path).collect();
162+
layers_with_indices.into_iter().map(|(path, _)| path).collect()
163163
}
164164
}
165165

@@ -274,7 +274,7 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
274274
}
275275
})
276276
.collect::<Vec<usize>>();
277-
doc_title_numbers.sort();
277+
doc_title_numbers.sort_unstable();
278278
let mut new_doc_title_num = 1;
279279
while new_doc_title_num <= self.documents.len() {
280280
if new_doc_title_num != doc_title_numbers[new_doc_title_num - 1] {
@@ -430,7 +430,7 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
430430
RotateCanvasBegin { snap } => {
431431
self.rotating = true;
432432
self.snapping = snap;
433-
let layerdata = self.layerdata_mut(&vec![]);
433+
let layerdata = self.layerdata_mut(&[]);
434434
layerdata.snap_rotate = snap;
435435
self.mouse_pos = ipp.mouse.position;
436436
}
@@ -441,7 +441,7 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
441441
self.mouse_pos = ipp.mouse.position;
442442
}
443443
TranslateCanvasEnd => {
444-
let layerdata = self.layerdata_mut(&vec![]);
444+
let layerdata = self.layerdata_mut(&[]);
445445
layerdata.rotation = layerdata.snapped_angle();
446446
layerdata.snap_rotate = false;
447447
self.translating = false;
@@ -450,23 +450,23 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
450450
}
451451
MouseMove => {
452452
if self.translating {
453-
let delta = ipp.mouse.position.to_dvec2() - self.mouse_pos.to_dvec2();
453+
let delta = ipp.mouse.position.as_dvec2() - self.mouse_pos.as_dvec2();
454454
let transformed_delta = self.active_document().document.root.transform.inverse().transform_vector2(delta);
455455

456-
let layerdata = self.layerdata_mut(&vec![]);
457-
layerdata.translation = layerdata.translation + transformed_delta;
456+
let layerdata = self.layerdata_mut(&[]);
457+
layerdata.translation += transformed_delta;
458458
self.create_document_transform_from_layerdata(&ipp.viewport_size, responses);
459459
}
460460
if self.rotating {
461-
let half_viewport = ipp.viewport_size.to_dvec2() / 2.;
461+
let half_viewport = ipp.viewport_size.as_dvec2() / 2.;
462462
let rotation = {
463-
let start_vec = self.mouse_pos.to_dvec2() - half_viewport;
464-
let end_vec = ipp.mouse.position.to_dvec2() - half_viewport;
463+
let start_vec = self.mouse_pos.as_dvec2() - half_viewport;
464+
let end_vec = ipp.mouse.position.as_dvec2() - half_viewport;
465465
start_vec.angle_between(end_vec)
466466
};
467467

468468
let snapping = self.snapping;
469-
let layerdata = self.layerdata_mut(&vec![]);
469+
let layerdata = self.layerdata_mut(&[]);
470470
layerdata.rotation += rotation;
471471
layerdata.snap_rotate = snapping;
472472
responses.push_back(
@@ -480,7 +480,7 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
480480
if self.zooming {
481481
let difference = self.mouse_pos.y as f64 - ipp.mouse.position.y as f64;
482482
let amount = 1. + difference * MOUSE_ZOOM_RATE;
483-
let layerdata = self.layerdata_mut(&vec![]);
483+
let layerdata = self.layerdata_mut(&[]);
484484
let new = (layerdata.scale * amount).clamp(VIEWPORT_ZOOM_SCALE_MIN, VIEWPORT_ZOOM_SCALE_MAX);
485485
layerdata.scale = new;
486486
responses.push_back(FrontendMessage::SetCanvasZoom { new_zoom: layerdata.scale }.into());
@@ -489,22 +489,22 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
489489
self.mouse_pos = ipp.mouse.position;
490490
}
491491
SetCanvasZoom(new) => {
492-
let layerdata = self.layerdata_mut(&vec![]);
492+
let layerdata = self.layerdata_mut(&[]);
493493
layerdata.scale = new.clamp(VIEWPORT_ZOOM_SCALE_MIN, VIEWPORT_ZOOM_SCALE_MAX);
494494
responses.push_back(FrontendMessage::SetCanvasZoom { new_zoom: layerdata.scale }.into());
495495
self.create_document_transform_from_layerdata(&ipp.viewport_size, responses);
496496
}
497497
MultiplyCanvasZoom(multiplier) => {
498-
let layerdata = self.layerdata_mut(&vec![]);
498+
let layerdata = self.layerdata_mut(&[]);
499499
let new = (layerdata.scale * multiplier).clamp(VIEWPORT_ZOOM_SCALE_MIN, VIEWPORT_ZOOM_SCALE_MAX);
500500
layerdata.scale = new;
501501
responses.push_back(FrontendMessage::SetCanvasZoom { new_zoom: layerdata.scale }.into());
502502
self.create_document_transform_from_layerdata(&ipp.viewport_size, responses);
503503
}
504504
WheelCanvasZoom => {
505505
let scroll = ipp.mouse.scroll_delta.scroll_delta();
506-
let mouse = ipp.mouse.position.to_dvec2();
507-
let viewport_size = ipp.viewport_size.to_dvec2();
506+
let mouse = ipp.mouse.position.as_dvec2();
507+
let viewport_size = ipp.viewport_size.as_dvec2();
508508
let mut zoom_factor = 1. + scroll.abs() * WHEEL_ZOOM_RATE;
509509
if ipp.mouse.scroll_delta.y > 0 {
510510
zoom_factor = 1. / zoom_factor
@@ -515,7 +515,7 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
515515
let delta = delta_size * -2. * (mouse_percent - (0.5, 0.5).into());
516516

517517
let transformed_delta = self.active_document().document.root.transform.inverse().transform_vector2(delta);
518-
let layerdata = self.layerdata_mut(&vec![]);
518+
let layerdata = self.layerdata_mut(&[]);
519519
let new = (layerdata.scale * zoom_factor).clamp(VIEWPORT_ZOOM_SCALE_MIN, VIEWPORT_ZOOM_SCALE_MAX);
520520
layerdata.scale = new;
521521
layerdata.translation += transformed_delta;
@@ -524,16 +524,16 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
524524
}
525525
WheelCanvasTranslate { use_y_as_x } => {
526526
let delta = match use_y_as_x {
527-
false => -ipp.mouse.scroll_delta.to_dvec2(),
527+
false => -ipp.mouse.scroll_delta.as_dvec2(),
528528
true => (-ipp.mouse.scroll_delta.y as f64, 0.).into(),
529529
} * VIEWPORT_SCROLL_RATE;
530530
let transformed_delta = self.active_document().document.root.transform.inverse().transform_vector2(delta);
531-
let layerdata = self.layerdata_mut(&vec![]);
531+
let layerdata = self.layerdata_mut(&[]);
532532
layerdata.translation += transformed_delta;
533533
self.create_document_transform_from_layerdata(&ipp.viewport_size, responses);
534534
}
535535
SetCanvasRotation(new) => {
536-
let layerdata = self.layerdata_mut(&vec![]);
536+
let layerdata = self.layerdata_mut(&[]);
537537
layerdata.rotation = new;
538538
self.create_document_transform_from_layerdata(&ipp.viewport_size, responses);
539539
responses.push_back(FrontendMessage::SetCanvasRotation { new_radians: new }.into());
@@ -542,7 +542,7 @@ impl MessageHandler<DocumentMessage, &InputPreprocessor> for DocumentMessageHand
542542
let paths: Vec<Vec<LayerId>> = self.selected_layers_sorted();
543543

544544
let delta = {
545-
let root_layer_rotation = self.layerdata_mut(&vec![]).rotation;
545+
let root_layer_rotation = self.layerdata_mut(&[]).rotation;
546546
let rotate_to_viewport_space = DAffine2::from_angle(root_layer_rotation).inverse();
547547
rotate_to_viewport_space.transform_point2((x, y).into())
548548
};

core/editor/src/input/mouse.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ impl ViewportPosition {
1414
let y_diff = other.y as i64 - self.y as i64;
1515
f64::sqrt((x_diff * x_diff + y_diff * y_diff) as f64)
1616
}
17-
pub fn to_dvec2(&self) -> DVec2 {
17+
pub fn as_dvec2(&self) -> DVec2 {
1818
DVec2::new(self.x as f64, self.y as f64)
1919
}
2020
}
@@ -29,7 +29,7 @@ impl ScrollDelta {
2929
pub fn new(x: i32, y: i32, z: i32) -> ScrollDelta {
3030
ScrollDelta { x, y, z }
3131
}
32-
pub fn to_dvec2(&self) -> DVec2 {
32+
pub fn as_dvec2(&self) -> DVec2 {
3333
DVec2::new(self.x as f64, self.y as f64)
3434
}
3535
pub fn scroll_delta(&self) -> f64 {

core/editor/src/tool/tools/pen.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ impl Fsm for PenToolFsmState {
5656

5757
fn transition(self, event: ToolMessage, document: &Document, tool_data: &DocumentToolData, data: &mut Self::ToolData, input: &InputPreprocessor, responses: &mut VecDeque<Message>) -> Self {
5858
let transform = document.document.root.transform;
59-
let pos = transform.inverse() * DAffine2::from_translation(input.mouse.position.to_dvec2());
59+
let pos = transform.inverse() * DAffine2::from_translation(input.mouse.position.as_dvec2());
6060

6161
use PenMessage::*;
6262
use PenToolFsmState::*;

0 commit comments

Comments
 (0)