fix semicolon meaning #78
Annotations
5 errors and 19 warnings
explicit lifetime required in the type of `ranges`:
src/parser/parse_from_text/find_range.rs#L28
error[E0621]: explicit lifetime required in the type of `ranges`
--> src/parser/parse_from_text/find_range.rs:28:18
|
23 | fn find_range_for_char<'a>(code: u32, ranges: &[RangeInclusive<u32>]) -> FindRangeResult<'a> {
| ---------------------- help: add explicit lifetime `'a` to the type of `ranges`: `&'a [std::ops::RangeInclusive<u32>]`
...
28 | 0 => FindRangeResult::Range(&ranges[0]),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime `'a` required
|
non-exhaustive patterns: `Err(Incomplete(_))` and `Err(Failure(_))` not covered:
src/parser/parse_from_text/markdown_elements.rs#L101
error[E0004]: non-exhaustive patterns: `Err(Incomplete(_))` and `Err(Failure(_))` not covered
--> src/parser/parse_from_text/markdown_elements.rs:101:30
|
101 | let (rest, link) = match link(content) {
| ^^^^^^^^^^^^^ patterns `Err(Incomplete(_))` and `Err(Failure(_))` not covered
|
note: `std::result::Result<(&str, parser::Element), nom::Err<nom::error::Error<&str>>>` defined here
= note: the matched value is of type `std::result::Result<(&str, parser::Element), nom::Err<nom::error::Error<&str>>>`
help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern, a match arm with multiple or-patterns as shown, or multiple match arms
|
105 ~ }
106 + Err(Incomplete(_)) | Err(Failure(_)) => todo!()
|
|
refutable pattern in local binding: `(_, None)` not covered:
src/parser/parse_from_text/link_element.rs#L293
error[E0005]: refutable pattern in local binding: `(_, None)` not covered
--> src/parser/parse_from_text/link_element.rs:293:9
|
293 | let (input_, Some(fragment)) = opt(preceded(char('#'), take_while_ifragment))(input)?;
| ^^^^^^^^^^^^^^^^^^^^^^^^ pattern `(_, None)` not covered
|
= note: `let` bindings require an "irrefutable pattern", like a `struct` or an `enum` with only one variant
= note: for more information, visit https://doc.rust-lang.org/book/ch18-02-refutability.html
= note: the matched value is of type `(&str, std::option::Option<&str>)`
help: you might want to use `if let` to ignore the variant that isn't matched
|
293 | let (input_, fragment) = if let (input_, Some(fragment)) = opt(preceded(char('#'), take_while_ifragment))(input)? { (input_, fragment) } else { todo!() };
| +++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++
|
refutable pattern in local binding: `(_, None)` not covered:
src/parser/parse_from_text/link_element.rs#L292
error[E0005]: refutable pattern in local binding: `(_, None)` not covered
--> src/parser/parse_from_text/link_element.rs:292:9
|
292 | let (input_, Some(query)) = opt(preceded(char('?'), iquery))(input)?;
| ^^^^^^^^^^^^^^^^^^^^^ pattern `(_, None)` not covered
|
= note: `let` bindings require an "irrefutable pattern", like a `struct` or an `enum` with only one variant
= note: for more information, visit https://doc.rust-lang.org/book/ch18-02-refutability.html
= note: the matched value is of type `(&str, std::option::Option<&str>)`
help: you might want to use `if let` to ignore the variant that isn't matched
|
292 | let (input_, query) = if let (input_, Some(query)) = opt(preceded(char('?'), iquery))(input)? { (input_, query) } else { todo!() };
| ++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++
|
test
Process completed with exit code 101.
|
variable does not need to be mutable:
src/parser/parse_from_text/link_element.rs#L294
warning: variable does not need to be mutable
--> src/parser/parse_from_text/link_element.rs:294:9
|
294 | let mut s = format!("{scheme}://{userinfo}@{host}:{port}{path}?{query}#{fragment}");
| ----^
| |
| help: remove this `mut`
|
= note: `#[warn(unused_mut)]` on by default
|
unused variable: `input_`:
src/parser/parse_from_text/link_element.rs#L293
warning: unused variable: `input_`
--> src/parser/parse_from_text/link_element.rs:293:10
|
293 | let (input_, Some(fragment)) = opt(preceded(char('#'), take_while_ifragment))(input)?;
| ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_`
|
unused variable: `input_`:
src/parser/parse_from_text/link_element.rs#L292
warning: unused variable: `input_`
--> src/parser/parse_from_text/link_element.rs:292:10
|
292 | let (input_, Some(query)) = opt(preceded(char('?'), iquery))(input)?;
| ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_`
|
unused variable: `is_ipv6_or_future`:
src/parser/parse_from_text/link_element.rs#L291
warning: unused variable: `is_ipv6_or_future`
--> src/parser/parse_from_text/link_element.rs:291:47
|
291 | let (input_, (userinfo, host, port, path, is_ipv6_or_future)) = ihier_part(input)?;
| ^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_is_ipv6_or_future`
|
unused variable: `input_`:
src/parser/parse_from_text/link_element.rs#L291
warning: unused variable: `input_`
--> src/parser/parse_from_text/link_element.rs:291:10
|
291 | let (input_, (userinfo, host, port, path, is_ipv6_or_future)) = ihier_part(input)?;
| ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_`
|
unused variable: `input_`:
src/parser/parse_from_text/link_element.rs#L290
warning: unused variable: `input_`
--> src/parser/parse_from_text/link_element.rs:290:10
|
290 | let (input_, scheme) = scheme(input)?;
| ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_`
|
unused variable: `input_`:
src/parser/parse_from_text/link_element.rs#L289
warning: unused variable: `input_`
--> src/parser/parse_from_text/link_element.rs:289:9
|
289 | let input_ = <&str>::clone(&input);
| ^^^^^^ help: if this is intentional, prefix it with an underscore: `_input_`
|
= note: `#[warn(unused_variables)]` on by default
|
unreachable pattern:
src/parser/parse_from_text/link_element.rs#L65
warning: unreachable pattern
--> src/parser/parse_from_text/link_element.rs:65:29
|
65 | matches!(c, '_' | '.' | '_' | '~')
| ^^^
|
= note: `#[warn(unreachable_patterns)]` on by default
|
redundant field names in struct initialization:
src/parser/parse_from_text/link_element.rs#L302
warning: redundant field names in struct initialization
--> src/parser/parse_from_text/link_element.rs:302:17
|
302 | scheme: scheme,
| ^^^^^^^^^^^^^^ help: replace it with: `scheme`
|
= note: `#[warn(clippy::redundant_field_names)]` on by default
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names
|
unused import: `super::base_parsers::*`:
src/parser/parse_from_text/text_elements.rs#L5
warning: unused import: `super::base_parsers::*`
--> src/parser/parse_from_text/text_elements.rs:5:5
|
5 | use super::base_parsers::*;
| ^^^^^^^^^^^^^^^^^^^^^^
|
unused import: `crate::parser::link_url::LinkDestination`:
src/parser/parse_from_text/text_elements.rs#L2
warning: unused import: `crate::parser::link_url::LinkDestination`
--> src/parser/parse_from_text/text_elements.rs:2:5
|
2 | use crate::parser::link_url::LinkDestination;
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
unused imports: `peek`, `take_while1`, `take`, `verify`:
src/parser/parse_from_text/link_element.rs#L8
warning: unused imports: `peek`, `take_while1`, `take`, `verify`
--> src/parser/parse_from_text/link_element.rs:8:28
|
8 | bytes::complete::{tag, take, take_while, take_while1, take_while_m_n},
| ^^^^ ^^^^^^^^^^^
9 | character::complete::{char, u8},
10 | combinator::{opt, peek, recognize, verify},
| ^^^^ ^^^^^^
|
unused imports: `Offset`, `Slice`:
src/parser/parse_from_text/link_element.rs#L4
warning: unused imports: `Offset`, `Slice`
--> src/parser/parse_from_text/link_element.rs:4:18
|
4 | use crate::nom::{Offset, Slice};
| ^^^^^^ ^^^^^
|
unused import: `super::base_parsers::*`:
src/parser/parse_from_text/link_element.rs#L1
warning: unused import: `super::base_parsers::*`
--> src/parser/parse_from_text/link_element.rs:1:5
|
1 | use super::base_parsers::*;
| ^^^^^^^^^^^^^^^^^^^^^^
|
unused imports: `direct_delimited`, `is_white_space_but_not_linebreak`, `is_white_space`:
src/parser/parse_from_text/desktop_subset.rs#L6
warning: unused imports: `direct_delimited`, `is_white_space_but_not_linebreak`, `is_white_space`
--> src/parser/parse_from_text/desktop_subset.rs:6:5
|
6 | direct_delimited, is_white_space, is_white_space_but_not_linebreak, CustomError,
| ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
unused import: `super::base_parsers::*`:
src/parser/parse_from_text/desktop_subset.rs#L4
warning: unused import: `super::base_parsers::*`
--> src/parser/parse_from_text/desktop_subset.rs:4:5
|
4 | use super::base_parsers::*;
| ^^^^^^^^^^^^^^^^^^^^^^
|
unused import: `Error`:
src/parser/parse_from_text/base_parsers.rs#L6
warning: unused import: `Error`
--> src/parser/parse_from_text/base_parsers.rs:6:13
|
6 | error::{Error, ErrorKind, ParseError},
| ^^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
test
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
|
test
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|