[INFO] updating cached repository makarchuk/rsjson [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/makarchuk/rsjson [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/makarchuk/rsjson" "work/ex/clippy-test-run/sources/stable/gh/makarchuk/rsjson"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/makarchuk/rsjson'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/makarchuk/rsjson" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/makarchuk/rsjson"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/makarchuk/rsjson'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 3be632ab59a54ef204754a8a23569ad942d941e3 [INFO] sha for GitHub repo makarchuk/rsjson: 3be632ab59a54ef204754a8a23569ad942d941e3 [INFO] validating manifest of makarchuk/rsjson on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of makarchuk/rsjson on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing makarchuk/rsjson [INFO] finished frobbing makarchuk/rsjson [INFO] frobbed toml for makarchuk/rsjson written to work/ex/clippy-test-run/sources/stable/gh/makarchuk/rsjson/Cargo.toml [INFO] started frobbing makarchuk/rsjson [INFO] finished frobbing makarchuk/rsjson [INFO] frobbed toml for makarchuk/rsjson written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/makarchuk/rsjson/Cargo.toml [INFO] crate makarchuk/rsjson has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting makarchuk/rsjson against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-7/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/makarchuk/rsjson:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 04e9b0ec3d048e68dda74ac8b1be4368e1d1f8c54de783bb2dc046e58ca4c758 [INFO] running `"docker" "start" "-a" "04e9b0ec3d048e68dda74ac8b1be4368e1d1f8c54de783bb2dc046e58ca4c758"` [INFO] [stderr] Checking rsjson v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:37:17 [INFO] [stderr] | [INFO] [stderr] 37 | None => return Ok(val), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(val)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | return Err(unexpected_character(i, ch)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(unexpected_character(i, ch))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:47:17 [INFO] [stderr] | [INFO] [stderr] 47 | None => return Err(make_err("Empty string provided".to_owned())), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(make_err("Empty string provided".to_owned()))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:49:29 [INFO] [stderr] | [INFO] [stderr] 49 | OBJECT_START => return Ok(JSONValue::JSONObject(parse_object(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONObject(parse_object(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:50:22 [INFO] [stderr] | [INFO] [stderr] 50 | QUOTE => return Ok(JSONValue::JSONString(parse_str(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONString(parse_str(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:51:27 [INFO] [stderr] | [INFO] [stderr] 51 | TRUE_START => return Ok(JSONValue::JSONBool(parse_true(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONBool(parse_true(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:52:28 [INFO] [stderr] | [INFO] [stderr] 52 | FALSE_START => return Ok(JSONValue::JSONBool(parse_false(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONBool(parse_false(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:55:17 [INFO] [stderr] | [INFO] [stderr] 55 | return Ok(JSONValue::JSONNull()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONNull())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:57:22 [INFO] [stderr] | [INFO] [stderr] 57 | MINUS => return Ok(JSONValue::JSONNumber(parse_num(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONNumber(parse_num(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:58:26 [INFO] [stderr] | [INFO] [stderr] 58 | '0'...'9' => return Ok(JSONValue::JSONNumber(parse_num(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONNumber(parse_num(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:59:28 [INFO] [stderr] | [INFO] [stderr] 59 | ARRAY_START => return Ok(JSONValue::JSONArray(parse_array(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONArray(parse_array(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:62:17 [INFO] [stderr] | [INFO] [stderr] 62 | return Err(unexpected_character(i, ch)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(unexpected_character(i, ch))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:135:5 [INFO] [stderr] | [INFO] [stderr] 135 | return Ok(value); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(value)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | return parse_const(chars, BOOL_TRUE, true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `parse_const(chars, BOOL_TRUE, true)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | return parse_const(chars, BOOL_FALSE, false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `parse_const(chars, BOOL_FALSE, false)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:147:5 [INFO] [stderr] | [INFO] [stderr] 147 | return parse_const(chars, NULL, ()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `parse_const(chars, NULL, ())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/parser/mod.rs:169:12 [INFO] [stderr] | [INFO] [stderr] 169 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 170 | | if ch == UNICODE_ESCAPE { [INFO] [stderr] 171 | | let mut ord: u32 = 0; [INFO] [stderr] 172 | | let mut seq = "\\u".to_owned(); [INFO] [stderr] ... | [INFO] [stderr] 183 | | } [INFO] [stderr] 184 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 169 | } else if ch == UNICODE_ESCAPE { [INFO] [stderr] 170 | let mut ord: u32 = 0; [INFO] [stderr] 171 | let mut seq = "\\u".to_owned(); [INFO] [stderr] 172 | for j in 0..4 { [INFO] [stderr] 173 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] 174 | seq.push(ch); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:243:18 [INFO] [stderr] | [INFO] [stderr] 243 | Ok(n) => return Ok(n), [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `Ok(n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:244:19 [INFO] [stderr] | [INFO] [stderr] 244 | Err(_) => return Err(make_err(format!("Unable to parse number {}", num))), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(make_err(format!("Unable to parse number {}", num)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:268:5 [INFO] [stderr] | [INFO] [stderr] 268 | return Ok(result); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(result)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:274:17 [INFO] [stderr] | [INFO] [stderr] 274 | None => return Ok(String::new()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(String::new())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:284:21 [INFO] [stderr] | [INFO] [stderr] 284 | return Ok(".".to_owned() + digits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(".".to_owned() + digits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:288:21 [INFO] [stderr] | [INFO] [stderr] 288 | return Err(unexpected_character(i, ch)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(unexpected_character(i, ch))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:290:22 [INFO] [stderr] | [INFO] [stderr] 290 | _ => return Ok(String::new()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(String::new())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:307:5 [INFO] [stderr] | [INFO] [stderr] 307 | return Ok(()); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:312:17 [INFO] [stderr] | [INFO] [stderr] 312 | None => return None, [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:315:13 [INFO] [stderr] | [INFO] [stderr] 315 | return Some(*ch); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(*ch)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | return parser::parse_json(s); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `parser::parse_json(s)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/parser/tests.rs:62:26 [INFO] [stderr] | [INFO] [stderr] 62 | ("0.0000000001", 0.0000000001), [INFO] [stderr] | ^^^^^^^^^^^^ help: consider: `0.000_000_000_1` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::unreadable_literal)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/parser/tests.rs:65:13 [INFO] [stderr] | [INFO] [stderr] 65 | 12312518359823.23482394823930113570185103857, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider: `12_312_518_359_823.234_823_948_239_301_135_701_851_038_57` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/parser/tests.rs:68:36 [INFO] [stderr] | [INFO] [stderr] 68 | ("-123123123123123.1291", -123123123123123.1291), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: consider: `123_123_123_123_123.129_1` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/parser/tests.rs:71:34 [INFO] [stderr] | [INFO] [stderr] 71 | ("1231231239.0121e-121", 1231231239.0121e-121), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: consider: `1_231_231_239.012_1e-121` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: long literal lacking separators [INFO] [stderr] --> src/parser/tests.rs:72:39 [INFO] [stderr] | [INFO] [stderr] 72 | ("1231231239.0121e-5000 asd", 1231231239.0121e-5000), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: consider: `1_231_231_239.012_1e-5000` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unreadable_literal [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:37:17 [INFO] [stderr] | [INFO] [stderr] 37 | None => return Ok(val), [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(val)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::needless_return)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:40:13 [INFO] [stderr] | [INFO] [stderr] 40 | return Err(unexpected_character(i, ch)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(unexpected_character(i, ch))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:47:17 [INFO] [stderr] | [INFO] [stderr] 47 | None => return Err(make_err("Empty string provided".to_owned())), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(make_err("Empty string provided".to_owned()))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:49:29 [INFO] [stderr] | [INFO] [stderr] 49 | OBJECT_START => return Ok(JSONValue::JSONObject(parse_object(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONObject(parse_object(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:50:22 [INFO] [stderr] | [INFO] [stderr] 50 | QUOTE => return Ok(JSONValue::JSONString(parse_str(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONString(parse_str(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:51:27 [INFO] [stderr] | [INFO] [stderr] 51 | TRUE_START => return Ok(JSONValue::JSONBool(parse_true(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONBool(parse_true(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:52:28 [INFO] [stderr] | [INFO] [stderr] 52 | FALSE_START => return Ok(JSONValue::JSONBool(parse_false(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONBool(parse_false(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:55:17 [INFO] [stderr] | [INFO] [stderr] 55 | return Ok(JSONValue::JSONNull()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONNull())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:57:22 [INFO] [stderr] | [INFO] [stderr] 57 | MINUS => return Ok(JSONValue::JSONNumber(parse_num(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONNumber(parse_num(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:58:26 [INFO] [stderr] | [INFO] [stderr] 58 | '0'...'9' => return Ok(JSONValue::JSONNumber(parse_num(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONNumber(parse_num(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:59:28 [INFO] [stderr] | [INFO] [stderr] 59 | ARRAY_START => return Ok(JSONValue::JSONArray(parse_array(chars)?)), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(JSONValue::JSONArray(parse_array(chars)?))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:62:17 [INFO] [stderr] | [INFO] [stderr] 62 | return Err(unexpected_character(i, ch)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(unexpected_character(i, ch))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:135:5 [INFO] [stderr] | [INFO] [stderr] 135 | return Ok(value); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(value)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:139:5 [INFO] [stderr] | [INFO] [stderr] 139 | return parse_const(chars, BOOL_TRUE, true); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `parse_const(chars, BOOL_TRUE, true)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:143:5 [INFO] [stderr] | [INFO] [stderr] 143 | return parse_const(chars, BOOL_FALSE, false); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `parse_const(chars, BOOL_FALSE, false)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:147:5 [INFO] [stderr] | [INFO] [stderr] 147 | return parse_const(chars, NULL, ()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `parse_const(chars, NULL, ())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/parser/mod.rs:169:12 [INFO] [stderr] | [INFO] [stderr] 169 | } else { [INFO] [stderr] | ____________^ [INFO] [stderr] 170 | | if ch == UNICODE_ESCAPE { [INFO] [stderr] 171 | | let mut ord: u32 = 0; [INFO] [stderr] 172 | | let mut seq = "\\u".to_owned(); [INFO] [stderr] ... | [INFO] [stderr] 183 | | } [INFO] [stderr] 184 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 169 | } else if ch == UNICODE_ESCAPE { [INFO] [stderr] 170 | let mut ord: u32 = 0; [INFO] [stderr] 171 | let mut seq = "\\u".to_owned(); [INFO] [stderr] 172 | for j in 0..4 { [INFO] [stderr] 173 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] 174 | seq.push(ch); [INFO] [stderr] ... [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:243:18 [INFO] [stderr] | [INFO] [stderr] 243 | Ok(n) => return Ok(n), [INFO] [stderr] | ^^^^^^^^^^^^ help: remove `return` as shown: `Ok(n)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:244:19 [INFO] [stderr] | [INFO] [stderr] 244 | Err(_) => return Err(make_err(format!("Unable to parse number {}", num))), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(make_err(format!("Unable to parse number {}", num)))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:268:5 [INFO] [stderr] | [INFO] [stderr] 268 | return Ok(result); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(result)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:274:17 [INFO] [stderr] | [INFO] [stderr] 274 | None => return Ok(String::new()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(String::new())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:284:21 [INFO] [stderr] | [INFO] [stderr] 284 | return Ok(".".to_owned() + digits); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(".".to_owned() + digits)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:288:21 [INFO] [stderr] | [INFO] [stderr] 288 | return Err(unexpected_character(i, ch)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Err(unexpected_character(i, ch))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:290:22 [INFO] [stderr] | [INFO] [stderr] 290 | _ => return Ok(String::new()), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(String::new())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:307:5 [INFO] [stderr] | [INFO] [stderr] 307 | return Ok(()); [INFO] [stderr] | ^^^^^^^^^^^^^^ help: remove `return` as shown: `Ok(())` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:312:17 [INFO] [stderr] | [INFO] [stderr] 312 | None => return None, [INFO] [stderr] | ^^^^^^^^^^^ help: remove `return` as shown: `None` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/parser/mod.rs:315:13 [INFO] [stderr] | [INFO] [stderr] 315 | return Some(*ch); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `Some(*ch)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: unneeded return statement [INFO] [stderr] --> src/lib.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | return parser::parse_json(s); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove `return` as shown: `parser::parse_json(s)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/parser/mod.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | / match next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] 73 | | ARRAY_END => { [INFO] [stderr] 74 | | chars.next(); [INFO] [stderr] 75 | | return Ok(result); [INFO] [stderr] 76 | | } [INFO] [stderr] 77 | | _ => (), [INFO] [stderr] 78 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 72 | if let ARRAY_END = next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] 73 | chars.next(); [INFO] [stderr] 74 | return Ok(result); [INFO] [stderr] 75 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:72:28 [INFO] [stderr] | [INFO] [stderr] 72 | match next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:83:36 [INFO] [stderr] | [INFO] [stderr] 83 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/parser/mod.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 99 | / match next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] 100 | | OBJECT_END => { [INFO] [stderr] 101 | | chars.next(); [INFO] [stderr] 102 | | return Ok(result); [INFO] [stderr] 103 | | } [INFO] [stderr] 104 | | _ => (), [INFO] [stderr] 105 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 99 | if let OBJECT_END = next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] 100 | chars.next(); [INFO] [stderr] 101 | return Ok(result); [INFO] [stderr] 102 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:99:28 [INFO] [stderr] | [INFO] [stderr] 99 | match next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:115:36 [INFO] [stderr] | [INFO] [stderr] 115 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:130:36 [INFO] [stderr] | [INFO] [stderr] 130 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:154:36 [INFO] [stderr] | [INFO] [stderr] 154 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:166:32 [INFO] [stderr] | [INFO] [stderr] 166 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:174:44 [INFO] [stderr] | [INFO] [stderr] 174 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:178:22 [INFO] [stderr] | [INFO] [stderr] 178 | .ok_or(invalid_escape_sequence(i - j - 2, &seq))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| invalid_escape_sequence(i - j - 2, &seq))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:180:45 [INFO] [stderr] | [INFO] [stderr] 180 | result.push(char::from_u32(ord).ok_or(invalid_escape_sequence(i - 2, &seq))?) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| invalid_escape_sequence(i - 2, &seq))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:201:31 [INFO] [stderr] | [INFO] [stderr] 201 | let ch = next_char(chars).ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:206:31 [INFO] [stderr] | [INFO] [stderr] 206 | let ch = next_char(chars).ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:216:40 [INFO] [stderr] | [INFO] [stderr] 216 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:227:43 [INFO] [stderr] | [INFO] [stderr] 227 | let ch = next_char(chars).ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/parser/mod.rs:253:20 [INFO] [stderr] | [INFO] [stderr] 253 | if result.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!result.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/parser/mod.rs:280:24 [INFO] [stderr] | [INFO] [stderr] 280 | if digits.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `digits.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:281:52 [INFO] [stderr] | [INFO] [stderr] 281 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:300:32 [INFO] [stderr] | [INFO] [stderr] 300 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:5:14 [INFO] [stderr] | [INFO] [stderr] 5 | for s in vec![ [INFO] [stderr] | ______________^ [INFO] [stderr] 6 | | ("\"asd\"", "asd"), [INFO] [stderr] 7 | | ("\"as asd asd d\\\"\"", "as asd asd d\""), [INFO] [stderr] 8 | | ("\"asd\\r\\n\\t\"", "asd\r\n\t"), [INFO] [stderr] ... | [INFO] [stderr] 11 | | // ("\"\\uD834\\uDd1e\"", "ab"), This corner case is failing for now. I hate utf-16! [INFO] [stderr] 12 | | ] { [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::useless_vec)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:20:14 [INFO] [stderr] | [INFO] [stderr] 20 | for s in vec![ [INFO] [stderr] | ______________^ [INFO] [stderr] 21 | | ("\"this \n fails \""), [INFO] [stderr] 22 | | ("no quotes"), [INFO] [stderr] 23 | | ("\"not_closed"), [INFO] [stderr] 24 | | ("not opened"), [INFO] [stderr] 25 | | ("\"invalid escape \\x \""), [INFO] [stderr] 26 | | ] { [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:34:14 [INFO] [stderr] | [INFO] [stderr] 34 | for s in vec!["true", "true, ", "true asdpjmklmo"] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&["true", "true, ", "true asdpjmklmo"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:37:14 [INFO] [stderr] | [INFO] [stderr] 37 | for s in vec!["false", "false, ", "false asdpjmklmo"] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&["false", "false, ", "false asdpjmklmo"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:44:14 [INFO] [stderr] | [INFO] [stderr] 44 | for s in vec!["True", "False", "TRUE", "0", "1", "asdm"] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&["True", "False", "TRUE", "0", "1", "asdm"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:54:14 [INFO] [stderr] | [INFO] [stderr] 54 | for s in vec![ [INFO] [stderr] | ______________^ [INFO] [stderr] 55 | | ("0e1", 0.0), [INFO] [stderr] 56 | | ("1,2", 1.0), [INFO] [stderr] 57 | | ("1}", 1.0), [INFO] [stderr] ... | [INFO] [stderr] 72 | | ("1231231239.0121e-5000 asd", 1231231239.0121e-5000), [INFO] [stderr] 73 | | ] { [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/parser/tests.rs:65:13 [INFO] [stderr] | [INFO] [stderr] 65 | 12312518359823.23482394823930113570185103857, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `12_312_518_359_823.234` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::excessive_precision)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] warning: float has excessive precision [INFO] [stderr] --> src/parser/tests.rs:68:36 [INFO] [stderr] | [INFO] [stderr] 68 | ("-123123123123123.1291", -123123123123123.1291), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ help: consider changing the type or truncating it to: `123_123_123_123_123.13` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stderr] [INFO] [stderr] error: strict comparison of f32 or f64 [INFO] [stderr] --> src/parser/tests.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | assert_eq!(parse_num(&mut s.0.char_indices().peekable()).unwrap(), s.1) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::float_cmp)] on by default [INFO] [stderr] note: std::f32::EPSILON and std::f64::EPSILON are available. [INFO] [stderr] --> src/parser/tests.rs:75:9 [INFO] [stderr] | [INFO] [stderr] 75 | assert_eq!(parse_num(&mut s.0.char_indices().peekable()).unwrap(), s.1) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#float_cmp [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:81:14 [INFO] [stderr] | [INFO] [stderr] 81 | for s in vec![ [INFO] [stderr] | ______________^ [INFO] [stderr] 82 | | "a123", [INFO] [stderr] 83 | | "0.e1", [INFO] [stderr] 84 | | "00.123", [INFO] [stderr] ... | [INFO] [stderr] 87 | | "123.0Ee123123123", [INFO] [stderr] 88 | | ] { [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:97:14 [INFO] [stderr] | [INFO] [stderr] 97 | for s in vec!["null", "null, ", "null ", "null!"] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&["null", "null, ", "null ", "null!"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:104:14 [INFO] [stderr] | [INFO] [stderr] 104 | for s in vec!["NULL", "!null", "asd", "><>OP"] { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: you can use a slice directly: `&["NULL", "!null", "asd", "><>OP"]` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:112:14 [INFO] [stderr] | [INFO] [stderr] 112 | for s in vec![ [INFO] [stderr] | ______________^ [INFO] [stderr] 113 | | "{,}", [INFO] [stderr] 114 | | "{1 : 1}", [INFO] [stderr] 115 | | "{\"asd\": 1,}", [INFO] [stderr] ... | [INFO] [stderr] 120 | | "{\"asd\": 1; \"bsd\": \"asdasdad}", [INFO] [stderr] 121 | | ] { [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: useless use of `vec!` [INFO] [stderr] --> src/parser/tests.rs:129:14 [INFO] [stderr] | [INFO] [stderr] 129 | for s in vec![ [INFO] [stderr] | ______________^ [INFO] [stderr] 130 | | "{}", [INFO] [stderr] 131 | | "{\"asd\": 1}", [INFO] [stderr] 132 | | "{\"asd\": {\"b\": 1}}", [INFO] [stderr] ... | [INFO] [stderr] 135 | | "{\"asd\": 1, \"bsd\": \"asdasdasd\"}", [INFO] [stderr] 136 | | ] { [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/parser/mod.rs:72:5 [INFO] [stderr] | [INFO] [stderr] 72 | / match next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] 73 | | ARRAY_END => { [INFO] [stderr] 74 | | chars.next(); [INFO] [stderr] 75 | | return Ok(result); [INFO] [stderr] 76 | | } [INFO] [stderr] 77 | | _ => (), [INFO] [stderr] 78 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::single_match)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 72 | if let ARRAY_END = next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] 73 | chars.next(); [INFO] [stderr] 74 | return Ok(result); [INFO] [stderr] 75 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:72:28 [INFO] [stderr] | [INFO] [stderr] 72 | match next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::or_fun_call)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:83:36 [INFO] [stderr] | [INFO] [stderr] 83 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: you seem to be trying to use match for destructuring a single pattern. Consider using `if let` [INFO] [stderr] --> src/parser/mod.rs:99:5 [INFO] [stderr] | [INFO] [stderr] 99 | / match next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] 100 | | OBJECT_END => { [INFO] [stderr] 101 | | chars.next(); [INFO] [stderr] 102 | | return Ok(result); [INFO] [stderr] 103 | | } [INFO] [stderr] 104 | | _ => (), [INFO] [stderr] 105 | | } [INFO] [stderr] | |_____^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match [INFO] [stderr] help: try this [INFO] [stderr] | [INFO] [stderr] 99 | if let OBJECT_END = next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] 100 | chars.next(); [INFO] [stderr] 101 | return Ok(result); [INFO] [stderr] 102 | } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:99:28 [INFO] [stderr] | [INFO] [stderr] 99 | match next_char(chars).ok_or(unexpected_eof())? { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:115:36 [INFO] [stderr] | [INFO] [stderr] 115 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:130:36 [INFO] [stderr] | [INFO] [stderr] 130 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:154:36 [INFO] [stderr] | [INFO] [stderr] 154 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:166:32 [INFO] [stderr] | [INFO] [stderr] 166 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:174:44 [INFO] [stderr] | [INFO] [stderr] 174 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:178:22 [INFO] [stderr] | [INFO] [stderr] 178 | .ok_or(invalid_escape_sequence(i - j - 2, &seq))?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| invalid_escape_sequence(i - j - 2, &seq))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:180:45 [INFO] [stderr] | [INFO] [stderr] 180 | result.push(char::from_u32(ord).ok_or(invalid_escape_sequence(i - 2, &seq))?) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(|| invalid_escape_sequence(i - 2, &seq))` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:201:31 [INFO] [stderr] | [INFO] [stderr] 201 | let ch = next_char(chars).ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:206:31 [INFO] [stderr] | [INFO] [stderr] 206 | let ch = next_char(chars).ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:216:40 [INFO] [stderr] | [INFO] [stderr] 216 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:227:43 [INFO] [stderr] | [INFO] [stderr] 227 | let ch = next_char(chars).ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/parser/mod.rs:253:20 [INFO] [stderr] | [INFO] [stderr] 253 | if result.len() > 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `!result.is_empty()` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::len_zero)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: length comparison to zero [INFO] [stderr] --> src/parser/mod.rs:280:24 [INFO] [stderr] | [INFO] [stderr] 280 | if digits.len() == 0 { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ help: using `is_empty` is clearer and more explicit: `digits.is_empty()` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#len_zero [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:281:52 [INFO] [stderr] | [INFO] [stderr] 281 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] warning: use of `ok_or` followed by a function call [INFO] [stderr] --> src/parser/mod.rs:300:32 [INFO] [stderr] | [INFO] [stderr] 300 | let (i, ch) = chars.next().ok_or(unexpected_eof())?; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ help: try this: `ok_or_else(unexpected_eof)` [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#or_fun_call [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `rsjson`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "04e9b0ec3d048e68dda74ac8b1be4368e1d1f8c54de783bb2dc046e58ca4c758"` [INFO] running `"docker" "rm" "-f" "04e9b0ec3d048e68dda74ac8b1be4368e1d1f8c54de783bb2dc046e58ca4c758"` [INFO] [stdout] 04e9b0ec3d048e68dda74ac8b1be4368e1d1f8c54de783bb2dc046e58ca4c758