Commit Graph

52 Commits

Author SHA1 Message Date
mcarton
b5f65ec699 Improve OR_FUN_CALL to suggest unwrap_or_default 2016-01-18 13:11:07 +01:00
mcarton
c6604bb281 Add a lint to warn about call to .*or(foo(..)) 2016-01-16 18:47:45 +01:00
Manish Goregaokar
c9342d0121 fmt clippy 2016-01-04 09:56:12 +05:30
mcarton
7a4d6aa8b7 Use same error message for OPTION_UNWRAP_USED and RESULT_UNWRAP_USED
IIRC, Result::expect wasn't stable until quite recently, which might be
why there was 2 different error messages.
2016-01-03 14:49:54 +01:00
mcarton
52fbf1989d Add missing WRONG_PUB_SELF_CONVENTION in lint_array! and corresponding test 2016-01-03 14:42:24 +01:00
Devon Hollowood
093582c102 Make MethodsPass lint notes clearer 2015-12-30 01:07:40 -08:00
Devon Hollowood
2c42d46468 Bug fix 2015-12-30 00:55:38 -08:00
Devon Hollowood
a6bd2d0622 Add SEARCH_IS_SOME lint 2015-12-30 00:38:03 -08:00
Devon Hollowood
bbd439ec9e Add FILTER_NEXT lint 2015-12-28 16:56:58 -08:00
Devon Hollowood
29b53d600f Replace match_method_chain() with method_chain_args() 2015-12-27 14:15:09 -08:00
Devon Hollowood
f1aac931bd Refactor check_expr() impl for MethodsPass 2015-12-27 01:22:53 -08:00
Markus Unterwaditzer
acc47a3bd5 Nightly fixes
As of
e3da2a9003 (diff-12e06f1e9ca371a11bdc4615f50a4071L59)
HirVec is syntax::ptr::P instead of Vec.
2015-12-22 00:22:35 +01:00
llogiq
c645a9febe adding missing doc comments 2015-12-14 22:16:56 +01:00
llogiq
5bbc1427fd added wiki comments + wiki-generating python script 2015-12-11 01:22:27 +01:00
Oliver Schneider
04524c549e improve cc of function 2015-12-03 16:41:55 +01:00
Manish Goregaokar
409c0f0998 Merge pull request #468 from devonhollowood/option-methods
Lint `map(f).unwrap_or(a)` and `map(f).unwrap_or_else(g)`
2015-11-26 14:22:27 +05:30
Devon Hollowood
443e4556c2 Add lints suggesting map_or() and map_or_else()
In accordance with the latter lint, replace map().unwrap_or_else() in
src/mut_mut.rs with map_or_else()
2015-11-25 23:56:45 -08:00
Manish Goregaokar
b40e80f039 spurious newline 2015-11-23 16:34:23 +05:30
Florian Hartwig
a36707bffd Appease clippy by not shadowing variables 2015-11-19 20:19:19 +01:00
Florian Hartwig
096c064d43 Simplify has_debug_impl 2015-11-19 20:13:36 +01:00
Florian Hartwig
cad88a9137 warn on use of ok().expect() 2015-11-19 17:15:21 +01:00
Florian Hartwig
9511e6739d Update to latest rust nightly 2015-11-19 15:51:30 +01:00
Manish Goregaokar
15e3774cb4 rustup to 1.5.0-nightly (7bf4c885f 2015-09-26)
fixes #348
2015-09-28 10:34:10 +05:30
Manish Goregaokar
294d7d8586 Merge branch 'pr-347' 2015-09-24 12:01:18 +05:30
Pietro Monteiro
b2c66d1a0e Upgrade Rust to rustc 1.5.0-nightly (b2f379cdc 2015-09-23)
Ident was removed in many HIR structures in favor of Name.
2015-09-23 17:30:39 -07:00
Georg Brandl
7fdf52270b Fix stray backquote. 2015-09-19 08:49:01 +02:00
Manish Goregaokar
f4da7d09d2 Upgrade Rust to rustc 1.5.0-nightly (cff041170 2015-09-17)
LintPass was split and ExprParen was removed from the HIR

Fixes #338
2015-09-19 08:23:04 +05:30
llogiq
e43f2d7e54 damn autocorrect 2015-09-07 11:49:35 +02:00
llogiq
c79d884450 replace if let by equality check 2015-09-07 11:46:04 +02:00
llogiq
92b04cd75d split wrong_self_convention in pub/default visibility part 2015-09-07 09:17:45 +02:00
Manish Goregaokar
af4d7f9b60 Merge pull request #298 from birkenfeld/as_mut
methods: allow &mut self for as_ methods
2015-09-04 16:16:58 +05:30
Georg Brandl
d659d039b6 methods: allow &mut self for as_ methods 2015-09-04 07:56:52 +02:00
Manish Goregaokar
eca185438b Update rust to 0efb9dab8c7c07fa28e9df0eccc5c07ea3c17fbb (HIR+lints, Thu Sep 3 18:59:56 2015 +0530)
fixes #294
2015-09-03 23:12:19 +05:30
Manish Goregaokar
fbdba7f915 Fix ICE 2015-09-03 02:15:02 +05:30
Georg Brandl
6b589681c9 methods: allow multiple self kinds for "is_" methods
These can be static method predicates.  (Found one in rust-copperline,
called Term::is_unsupported_term().)
2015-09-02 17:14:27 +02:00
Georg Brandl
5264196538 methods: try to allow value self when type is Copy (fixes #273) 2015-09-01 21:08:49 +02:00
Georg Brandl
1007864198 new lint: self conventions for certain method names (fixes #267) 2015-09-01 18:52:48 +02:00
Manish Goregaokar
193e71be61 Merge branch 'pr-228'
Conflicts:
	README.md
	src/methods.rs
2015-08-27 11:09:40 +05:30
Georg Brandl
6fa34cca29 methods: suggest correct replacement for to_string() (fixes #232) 2015-08-25 18:39:21 +02:00
Georg Brandl
92a3394065 all: remove unneeded deref and/or ref operations 2015-08-25 14:41:35 +02:00
Georg Brandl
81ef3da03c methods: people might be using to_string() to make a copy; add a hint for that 2015-08-25 12:46:29 +02:00
Georg Brandl
56e8db476c new lint: inherent methods that should be trait impls (fixes #218) 2015-08-25 11:10:42 +02:00
Georg Brandl
8a10440641 utils: add match_type() helper function
which saves one level of matching when checking for type paths
2015-08-21 19:24:38 +02:00
Georg Brandl
a437936d49 all: put often used DefPaths into utils as consts
Also remove the "use xxx;" blocks to ensure import paths don't change.
They don't work anyway since stuff may still be re-exported at the old
location, while we need the "canonical" location for the type checks.

Plus, the test suite catches all these cases.
2015-08-21 19:23:05 +02:00
Georg Brandl
64954283c1 add some imports to guard against crate moves 2015-08-16 09:03:06 +02:00
Georg Brandl
47b605304d all: organize imports
* remove unused imports
* separate external and internal imports
* consistent import of rustc::lint
* move #[allow(unused_imports)] to local impl
2015-08-16 08:55:34 +02:00
Georg Brandl
137a9f3def methods: allow Option.unwrap by default 2015-08-15 07:23:04 +02:00
Georg Brandl
2c2716f045 all: DRY for lint descriptions
* use the rustc style for lint descriptions
* add a script to parse all lint descriptions
  and put the generated table into README
2015-08-13 11:14:05 +02:00
Georg Brandl
a67e55f3f0 lint messages: remove trailing period
Since lint messages often are suffixed by ", #[warn(xxx)] on by default"
this trailing period produces an ugly clash with the comma.
2015-08-13 08:15:42 +02:00
Georg Brandl
4074c1f968 methods: lint against String.to_string (fixes #100) 2015-08-12 17:03:13 +02:00