Add AttrsList::spans_iter and use it in Buffer::append #660
clippy
37 warnings
Details
Results
Message level | Amount |
---|---|
Internal compiler error | 0 |
Error | 0 |
Warning | 37 |
Note | 0 |
Help | 0 |
Versions
- rustc 1.80.1 (3f5fd8dd4 2024-08-06)
- cargo 1.80.1 (376290515 2024-07-16)
- clippy 0.1.80 (3f5fd8d 2024-08-06)
Annotations
Check warning on line 36 in src/shape_run_cache.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/shape_run_cache.rs:36:61
|
36 | /// Remove anything in the cache with an age older than keep_ages
| ^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
36 | /// Remove anything in the cache with an age older than `keep_ages`
| ~~~~~~~~~~~
Check warning on line 387 in src/shape.rs
github-actions / clippy
manual saturating arithmetic
warning: manual saturating arithmetic
--> src/shape.rs:385:19
|
385 | let end = min(attrs_range.end, end_run)
| ___________________^
386 | | .checked_sub(start_run)
387 | | .unwrap_or(0);
| |_________________________^ help: consider using `saturating_sub`: `min(attrs_range.end, end_run).saturating_sub(start_run)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_saturating_arithmetic
Check warning on line 384 in src/shape.rs
github-actions / clippy
manual saturating arithmetic
warning: manual saturating arithmetic
--> src/shape.rs:382:21
|
382 | let start = max(attrs_range.start, start_run)
| _____________________^
383 | | .checked_sub(start_run)
384 | | .unwrap_or(0);
| |_________________________^ help: consider using `saturating_sub`: `max(attrs_range.start, start_run).saturating_sub(start_run)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_saturating_arithmetic
= note: `#[warn(clippy::manual_saturating_arithmetic)]` on by default
Check warning on line 55 in src/line_ending.rs
github-actions / clippy
the borrowed expression implements the required traits
warning: the borrowed expression implements the required traits
--> src/line_ending.rs:55:49
|
55 | match self.string[start..self.end].find(&['\r', '\n']) {
| ^^^^^^^^^^^^^ help: change this to: `['\r', '\n']`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args
= note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default
Check warning on line 61 in src/layout.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/layout.rs:61:25
|
61 | /// Cache key, see [CacheKey]
| ^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
61 | /// Cache key, see [`CacheKey`]
| ~~~~~~~~~~
Check warning on line 31 in src/layout.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/layout.rs:31:17
|
31 | /// Unicode BiDi embedding level, character is left-to-right if `level` is divisible by 2
| ^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
31 | /// Unicode `BiDi` embedding level, character is left-to-right if `level` is divisible by 2
| ~~~~~~
Check warning on line 251 in src/font/fallback/mod.rs
github-actions / clippy
current MSRV (Minimum Supported Rust Version) is `1.65.0` but this item is stable since `1.66.0`
warning: current MSRV (Minimum Supported Rust Version) is `1.65.0` but this item is stable since `1.66.0`
--> src/font/fallback/mod.rs:251:67
|
251 | if let Some(fallback_info) = self.monospace_fallbacks.pop_first() {
| ^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv
Check warning on line 148 in src/font/fallback/mod.rs
github-actions / clippy
current MSRV (Minimum Supported Rust Version) is `1.65.0` but this item is stable since `1.66.0`
warning: current MSRV (Minimum Supported Rust Version) is `1.65.0` but this item is stable since `1.66.0`
--> src/font/fallback/mod.rs:148:63
|
148 | if let Some(fallback_info) = self.monospace_fallbacks.pop_first() {
| ^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv
= note: `#[warn(clippy::incompatible_msrv)]` on by default
Check warning on line 303 in src/edit/mod.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/edit/mod.rs:303:56
|
303 | /// Insert text at specified cursor with specified attrs_list
| ^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
303 | /// Insert text at specified cursor with specified `attrs_list`
| ~~~~~~~~~~~~
Check warning on line 200 in src/edit/mod.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
--> src/edit/mod.rs:200:9
|
200 | self.with_buffer_mut(|buffer| buffer.set_redraw(redraw))
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add a `;` here: `self.with_buffer_mut(|buffer| buffer.set_redraw(redraw));`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#semicolon_if_nothing_returned
Check warning on line 1179 in src/edit/vi.rs
github-actions / clippy
docs for function returning `Result` missing `# Errors` section
warning: docs for function returning `Result` missing `# Errors` section
--> src/edit/vi.rs:1175:5
|
1175 | / pub fn load_text<P: AsRef<std::path::Path>>(
1176 | | &mut self,
1177 | | path: P,
1178 | | attrs: crate::Attrs,
1179 | | ) -> std::io::Result<()> {
| |____________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
Check warning on line 1142 in src/edit/vi.rs
github-actions / clippy
manual implementation of `Option::map`
warning: manual implementation of `Option::map`
--> src/edit/vi.rs:1136:37
|
1136 | / ... if let Some(last) = layout_runs.last() {
1137 | | ... Some(Action::Motion(Motion::GotoLine(
1138 | | ... (last.line_i + first.line_i) / 2,
1139 | | ... )))
1140 | | ... } else {
1141 | | ... None
1142 | | ... }
| |_______________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map
= note: `#[warn(clippy::manual_map)]` on by default
help: try
|
1136 ~ layout_runs.last().map(|last| Action::Motion(Motion::GotoLine(
1137 + (last.line_i + first.line_i) / 2,
1138 + )))
|
Check warning on line 1026 in src/edit/vi.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`
--> src/edit/vi.rs:1009:37
|
1009 | / ... match text[..cursor.index]
1010 | | ... .char_indices()
1011 | | ... .filter_map(|(i, c)| {
1012 | | ... if c == find_c {
... |
1025 | | ... None => {}
1026 | | ... }
| |_______________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match
help: try
|
1009 ~ if let Some(i) = text[..cursor.index]
1010 + .char_indices()
1011 + .filter_map(|(i, c)| {
1012 + if c == find_c {
1013 + let end = i + c.len_utf8();
1014 + if end < cursor.index {
1015 + return Some(end);
1016 + }
1017 + }
1018 + None
1019 + })
1020 + .last() {
1021 + cursor.index = i;
1022 + }
|
Check warning on line 998 in src/edit/vi.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`
--> src/edit/vi.rs:989:37
|
989 | / ... match text[..cursor.index]
990 | | ... .char_indices()
991 | | ... .filter(|&(_, c)| c == find_c)
992 | | ... .last()
... |
997 | | ... None => {}
998 | | ... }
| |_______________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match
help: try
|
989 ~ if let Some((i, _)) = text[..cursor.index]
990 + .char_indices()
991 + .filter(|&(_, c)| c == find_c)
992 + .last() {
993 + cursor.index = i;
994 + }
|
Check warning on line 886 in src/edit/vi.rs
github-actions / clippy
called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead
warning: called `filter(..).next()` on an `Iterator`. This is more succinctly expressed by calling `.find(..)` instead
--> src/edit/vi.rs:883:43
|
883 | ... match text[cursor.index..]
| _____________________________^
884 | | ... .char_indices()
885 | | ... .filter(|&(i, c)| i > 0 && c == find_c)
886 | | ... .next()
| |_________________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#filter_next
= note: `#[warn(clippy::filter_next)]` on by default
help: try
|
883 ~ match text[cursor.index..]
884 + .char_indices().find(|&(i, c)| i > 0 && c == find_c)
|
Check warning on line 892 in src/edit/vi.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`
--> src/edit/vi.rs:883:37
|
883 | / ... match text[cursor.index..]
884 | | ... .char_indices()
885 | | ... .filter(|&(i, c)| i > 0 && c == find_c)
886 | | ... .next()
... |
891 | | ... None => {}
892 | | ... }
| |_______________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match
help: try
|
883 ~ if let Some((i, _)) = text[cursor.index..]
884 + .char_indices()
885 + .filter(|&(i, c)| i > 0 && c == find_c)
886 + .next() {
887 + cursor.index += i;
888 + }
|
Check warning on line 652 in src/edit/vi.rs
github-actions / clippy
match expression looks like `matches!` macro
warning: match expression looks like `matches!` macro
--> src/edit/vi.rs:649:29
|
649 | let has_selection = match editor.selection() {
| _____________________________^
650 | | Selection::None => false,
651 | | _ => true,
652 | | };
| |_________^ help: try: `!matches!(editor.selection(), Selection::None)`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_like_matches_macro
= note: `#[warn(clippy::match_like_matches_macro)]` on by default
Check warning on line 218 in src/edit/vi.rs
github-actions / clippy
docs for function returning `Result` missing `# Errors` section
warning: docs for function returning `Result` missing `# Errors` section
--> src/edit/vi.rs:213:5
|
213 | / pub fn load_text<P: AsRef<std::path::Path>>(
214 | | &mut self,
215 | | font_system: &mut FontSystem,
216 | | path: P,
217 | | attrs: crate::Attrs,
218 | | ) -> std::io::Result<()> {
| |____________________________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
note: the lint level is defined here
--> src/lib.rs:86:9
|
86 | #![warn(clippy::missing_errors_doc)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^
Check warning on line 128 in src/edit/syntect.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
--> src/edit/syntect.rs:128:13
|
128 | buffer.set_text(font_system, &text, attrs, Shaping::Advanced)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add a `;` here: `buffer.set_text(font_system, &text, attrs, Shaping::Advanced);`
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#semicolon_if_nothing_returned
note: the lint level is defined here
--> src/lib.rs:90:9
|
90 | #![warn(clippy::semicolon_if_nothing_returned)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Check warning on line 540 in src/edit/editor.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`
--> src/edit/editor.rs:530:9
|
530 | / match self.change.take() {
531 | | Some(pending) => {
532 | | if !pending.items.is_empty() {
533 | | //TODO: is this a good idea?
... |
539 | | None => {}
540 | | }
| |_________^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match
= note: `#[warn(clippy::single_match)]` on by default
help: try
|
530 ~ if let Some(pending) = self.change.take() {
531 + if !pending.items.is_empty() {
532 + //TODO: is this a good idea?
533 + log::warn!("pending change caused apply_change to be ignored!");
534 + self.change = Some(pending);
535 + return false;
536 + }
537 + }
|
Check warning on line 121 in src/edit/editor.rs
github-actions / clippy
this function has too many arguments (8/7)
warning: this function has too many arguments (8/7)
--> src/edit/editor.rs:112:5
|
112 | / pub fn draw<F>(
113 | | &self,
114 | | font_system: &mut FontSystem,
115 | | cache: &mut crate::SwashCache,
... |
120 | | mut f: F,
121 | | ) where
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments
Check warning on line 92 in src/cursor.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/cursor.rs:92:63
|
92 | /// Move cursor to next character ([Self::Right] in LTR, [Self::Left] in RTL)
| ^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
92 | /// Move cursor to next character ([Self::Right] in LTR, [`Self::Left`] in RTL)
| ~~~~~~~~~~~~
Check warning on line 92 in src/cursor.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/cursor.rs:92:41
|
92 | /// Move cursor to next character ([Self::Right] in LTR, [Self::Left] in RTL)
| ^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
92 | /// Move cursor to next character ([`Self::Right`] in LTR, [Self::Left] in RTL)
| ~~~~~~~~~~~~~
Check warning on line 90 in src/cursor.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/cursor.rs:90:66
|
90 | /// Move cursor to previous character ([Self::Left] in LTR, [Self::Right] in RTL)
| ^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
90 | /// Move cursor to previous character ([Self::Left] in LTR, [`Self::Right`] in RTL)
| ~~~~~~~~~~~~~
Check warning on line 90 in src/cursor.rs
github-actions / clippy
item in documentation is missing backticks
warning: item in documentation is missing backticks
--> src/cursor.rs:90:45
|
90 | /// Move cursor to previous character ([Self::Left] in LTR, [Self::Right] in RTL)
| ^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_markdown
help: try
|
90 | /// Move cursor to previous character ([`Self::Left`] in LTR, [Self::Right] in RTL)
| ~~~~~~~~~~~~