]> git.lizzy.rs Git - rust.git/blob - src/tools/clippy/src/docs.rs
Rollup merge of #102072 - scottmcm:ptr-alignment-type, r=thomcc
[rust.git] / src / tools / clippy / src / docs.rs
1 // autogenerated. Please look at /clippy_dev/src/update_lints.rs
2
3 macro_rules! include_lint {
4     ($file_name: expr) => {
5         include_str!($file_name)
6     };
7 }
8
9 macro_rules! docs {
10     ($($lint_name: expr,)*) => {
11         pub fn explain(lint: &str) {
12             println!("{}", match lint {
13                 $(
14                     $lint_name => include_lint!(concat!("docs/", concat!($lint_name, ".txt"))),
15                 )*
16                 _ => "unknown lint",
17             })
18         }
19     }
20 }
21
22 docs! {
23     "absurd_extreme_comparisons",
24     "alloc_instead_of_core",
25     "allow_attributes_without_reason",
26     "almost_complete_letter_range",
27     "almost_swapped",
28     "approx_constant",
29     "arithmetic_side_effects",
30     "as_conversions",
31     "as_underscore",
32     "assertions_on_constants",
33     "assertions_on_result_states",
34     "assign_op_pattern",
35     "async_yields_async",
36     "await_holding_invalid_type",
37     "await_holding_lock",
38     "await_holding_refcell_ref",
39     "bad_bit_mask",
40     "bind_instead_of_map",
41     "blanket_clippy_restriction_lints",
42     "blocks_in_if_conditions",
43     "bool_assert_comparison",
44     "bool_comparison",
45     "bool_to_int_with_if",
46     "borrow_as_ptr",
47     "borrow_deref_ref",
48     "borrow_interior_mutable_const",
49     "borrowed_box",
50     "box_collection",
51     "box_default",
52     "boxed_local",
53     "branches_sharing_code",
54     "builtin_type_shadow",
55     "bytes_count_to_len",
56     "bytes_nth",
57     "cargo_common_metadata",
58     "case_sensitive_file_extension_comparisons",
59     "cast_abs_to_unsigned",
60     "cast_enum_constructor",
61     "cast_enum_truncation",
62     "cast_lossless",
63     "cast_possible_truncation",
64     "cast_possible_wrap",
65     "cast_precision_loss",
66     "cast_ptr_alignment",
67     "cast_ref_to_mut",
68     "cast_sign_loss",
69     "cast_slice_different_sizes",
70     "cast_slice_from_raw_parts",
71     "char_lit_as_u8",
72     "chars_last_cmp",
73     "chars_next_cmp",
74     "checked_conversions",
75     "clone_double_ref",
76     "clone_on_copy",
77     "clone_on_ref_ptr",
78     "cloned_instead_of_copied",
79     "cmp_nan",
80     "cmp_null",
81     "cmp_owned",
82     "cognitive_complexity",
83     "collapsible_else_if",
84     "collapsible_if",
85     "collapsible_match",
86     "collapsible_str_replace",
87     "comparison_chain",
88     "comparison_to_empty",
89     "copy_iterator",
90     "crate_in_macro_def",
91     "create_dir",
92     "crosspointer_transmute",
93     "dbg_macro",
94     "debug_assert_with_mut_call",
95     "decimal_literal_representation",
96     "declare_interior_mutable_const",
97     "default_instead_of_iter_empty",
98     "default_numeric_fallback",
99     "default_trait_access",
100     "default_union_representation",
101     "deprecated_cfg_attr",
102     "deprecated_semver",
103     "deref_addrof",
104     "deref_by_slicing",
105     "derivable_impls",
106     "derive_hash_xor_eq",
107     "derive_ord_xor_partial_ord",
108     "derive_partial_eq_without_eq",
109     "disallowed_macros",
110     "disallowed_methods",
111     "disallowed_names",
112     "disallowed_script_idents",
113     "disallowed_types",
114     "diverging_sub_expression",
115     "doc_link_with_quotes",
116     "doc_markdown",
117     "double_comparisons",
118     "double_must_use",
119     "double_neg",
120     "double_parens",
121     "drop_copy",
122     "drop_non_drop",
123     "drop_ref",
124     "duplicate_mod",
125     "duplicate_underscore_argument",
126     "duration_subsec",
127     "else_if_without_else",
128     "empty_drop",
129     "empty_enum",
130     "empty_line_after_outer_attr",
131     "empty_loop",
132     "empty_structs_with_brackets",
133     "enum_clike_unportable_variant",
134     "enum_glob_use",
135     "enum_variant_names",
136     "eq_op",
137     "equatable_if_let",
138     "erasing_op",
139     "err_expect",
140     "excessive_precision",
141     "exhaustive_enums",
142     "exhaustive_structs",
143     "exit",
144     "expect_fun_call",
145     "expect_used",
146     "expl_impl_clone_on_copy",
147     "explicit_auto_deref",
148     "explicit_counter_loop",
149     "explicit_deref_methods",
150     "explicit_into_iter_loop",
151     "explicit_iter_loop",
152     "explicit_write",
153     "extend_with_drain",
154     "extra_unused_lifetimes",
155     "fallible_impl_from",
156     "field_reassign_with_default",
157     "filetype_is_file",
158     "filter_map_identity",
159     "filter_map_next",
160     "filter_next",
161     "flat_map_identity",
162     "flat_map_option",
163     "float_arithmetic",
164     "float_cmp",
165     "float_cmp_const",
166     "float_equality_without_abs",
167     "fn_address_comparisons",
168     "fn_params_excessive_bools",
169     "fn_to_numeric_cast",
170     "fn_to_numeric_cast_any",
171     "fn_to_numeric_cast_with_truncation",
172     "for_kv_map",
173     "for_loops_over_fallibles",
174     "forget_copy",
175     "forget_non_drop",
176     "forget_ref",
177     "format_in_format_args",
178     "format_push_string",
179     "from_iter_instead_of_collect",
180     "from_over_into",
181     "from_str_radix_10",
182     "future_not_send",
183     "get_first",
184     "get_last_with_len",
185     "get_unwrap",
186     "identity_op",
187     "if_let_mutex",
188     "if_not_else",
189     "if_same_then_else",
190     "if_then_some_else_none",
191     "ifs_same_cond",
192     "implicit_clone",
193     "implicit_hasher",
194     "implicit_return",
195     "implicit_saturating_add",
196     "implicit_saturating_sub",
197     "imprecise_flops",
198     "inconsistent_digit_grouping",
199     "inconsistent_struct_constructor",
200     "index_refutable_slice",
201     "indexing_slicing",
202     "ineffective_bit_mask",
203     "inefficient_to_string",
204     "infallible_destructuring_match",
205     "infinite_iter",
206     "inherent_to_string",
207     "inherent_to_string_shadow_display",
208     "init_numbered_fields",
209     "inline_always",
210     "inline_asm_x86_att_syntax",
211     "inline_asm_x86_intel_syntax",
212     "inline_fn_without_body",
213     "inspect_for_each",
214     "int_plus_one",
215     "integer_arithmetic",
216     "integer_division",
217     "into_iter_on_ref",
218     "invalid_null_ptr_usage",
219     "invalid_regex",
220     "invalid_upcast_comparisons",
221     "invalid_utf8_in_unchecked",
222     "invisible_characters",
223     "is_digit_ascii_radix",
224     "items_after_statements",
225     "iter_cloned_collect",
226     "iter_count",
227     "iter_kv_map",
228     "iter_next_loop",
229     "iter_next_slice",
230     "iter_not_returning_iterator",
231     "iter_nth",
232     "iter_nth_zero",
233     "iter_on_empty_collections",
234     "iter_on_single_items",
235     "iter_overeager_cloned",
236     "iter_skip_next",
237     "iter_with_drain",
238     "iterator_step_by_zero",
239     "just_underscores_and_digits",
240     "large_const_arrays",
241     "large_digit_groups",
242     "large_enum_variant",
243     "large_include_file",
244     "large_stack_arrays",
245     "large_types_passed_by_value",
246     "len_without_is_empty",
247     "len_zero",
248     "let_and_return",
249     "let_underscore_drop",
250     "let_underscore_lock",
251     "let_underscore_must_use",
252     "let_unit_value",
253     "linkedlist",
254     "lossy_float_literal",
255     "macro_use_imports",
256     "main_recursion",
257     "manual_assert",
258     "manual_async_fn",
259     "manual_bits",
260     "manual_clamp",
261     "manual_filter_map",
262     "manual_find",
263     "manual_find_map",
264     "manual_flatten",
265     "manual_instant_elapsed",
266     "manual_map",
267     "manual_memcpy",
268     "manual_non_exhaustive",
269     "manual_ok_or",
270     "manual_range_contains",
271     "manual_rem_euclid",
272     "manual_retain",
273     "manual_saturating_arithmetic",
274     "manual_split_once",
275     "manual_str_repeat",
276     "manual_string_new",
277     "manual_strip",
278     "manual_swap",
279     "manual_unwrap_or",
280     "many_single_char_names",
281     "map_clone",
282     "map_collect_result_unit",
283     "map_entry",
284     "map_err_ignore",
285     "map_flatten",
286     "map_identity",
287     "map_unwrap_or",
288     "match_as_ref",
289     "match_bool",
290     "match_like_matches_macro",
291     "match_on_vec_items",
292     "match_overlapping_arm",
293     "match_ref_pats",
294     "match_result_ok",
295     "match_same_arms",
296     "match_single_binding",
297     "match_str_case_mismatch",
298     "match_wild_err_arm",
299     "match_wildcard_for_single_variants",
300     "maybe_infinite_iter",
301     "mem_forget",
302     "mem_replace_option_with_none",
303     "mem_replace_with_default",
304     "mem_replace_with_uninit",
305     "min_max",
306     "mismatched_target_os",
307     "mismatching_type_param_order",
308     "misrefactored_assign_op",
309     "missing_const_for_fn",
310     "missing_docs_in_private_items",
311     "missing_enforced_import_renames",
312     "missing_errors_doc",
313     "missing_inline_in_public_items",
314     "missing_panics_doc",
315     "missing_safety_doc",
316     "missing_spin_loop",
317     "mistyped_literal_suffixes",
318     "mixed_case_hex_literals",
319     "mixed_read_write_in_expression",
320     "mod_module_files",
321     "module_inception",
322     "module_name_repetitions",
323     "modulo_arithmetic",
324     "modulo_one",
325     "multi_assignments",
326     "multiple_crate_versions",
327     "multiple_inherent_impl",
328     "must_use_candidate",
329     "must_use_unit",
330     "mut_from_ref",
331     "mut_mut",
332     "mut_mutex_lock",
333     "mut_range_bound",
334     "mutable_key_type",
335     "mutex_atomic",
336     "mutex_integer",
337     "naive_bytecount",
338     "needless_arbitrary_self_type",
339     "needless_bitwise_bool",
340     "needless_bool",
341     "needless_borrow",
342     "needless_borrowed_reference",
343     "needless_collect",
344     "needless_continue",
345     "needless_doctest_main",
346     "needless_for_each",
347     "needless_late_init",
348     "needless_lifetimes",
349     "needless_match",
350     "needless_option_as_deref",
351     "needless_option_take",
352     "needless_parens_on_range_literals",
353     "needless_pass_by_value",
354     "needless_question_mark",
355     "needless_range_loop",
356     "needless_return",
357     "needless_splitn",
358     "needless_update",
359     "neg_cmp_op_on_partial_ord",
360     "neg_multiply",
361     "negative_feature_names",
362     "never_loop",
363     "new_ret_no_self",
364     "new_without_default",
365     "no_effect",
366     "no_effect_replace",
367     "no_effect_underscore_binding",
368     "non_ascii_literal",
369     "non_octal_unix_permissions",
370     "non_send_fields_in_send_ty",
371     "nonminimal_bool",
372     "nonsensical_open_options",
373     "nonstandard_macro_braces",
374     "not_unsafe_ptr_arg_deref",
375     "obfuscated_if_else",
376     "octal_escapes",
377     "ok_expect",
378     "only_used_in_recursion",
379     "op_ref",
380     "option_as_ref_deref",
381     "option_env_unwrap",
382     "option_filter_map",
383     "option_if_let_else",
384     "option_map_or_none",
385     "option_map_unit_fn",
386     "option_option",
387     "or_fun_call",
388     "or_then_unwrap",
389     "out_of_bounds_indexing",
390     "overflow_check_conditional",
391     "overly_complex_bool_expr",
392     "panic",
393     "panic_in_result_fn",
394     "panicking_unwrap",
395     "partialeq_ne_impl",
396     "partialeq_to_none",
397     "path_buf_push_overwrite",
398     "pattern_type_mismatch",
399     "possible_missing_comma",
400     "precedence",
401     "print_in_format_impl",
402     "print_literal",
403     "print_stderr",
404     "print_stdout",
405     "print_with_newline",
406     "println_empty_string",
407     "ptr_arg",
408     "ptr_as_ptr",
409     "ptr_eq",
410     "ptr_offset_with_cast",
411     "pub_use",
412     "question_mark",
413     "range_minus_one",
414     "range_plus_one",
415     "range_zip_with_len",
416     "rc_buffer",
417     "rc_clone_in_vec_init",
418     "rc_mutex",
419     "read_zero_byte_vec",
420     "recursive_format_impl",
421     "redundant_allocation",
422     "redundant_clone",
423     "redundant_closure",
424     "redundant_closure_call",
425     "redundant_closure_for_method_calls",
426     "redundant_else",
427     "redundant_feature_names",
428     "redundant_field_names",
429     "redundant_pattern",
430     "redundant_pattern_matching",
431     "redundant_pub_crate",
432     "redundant_slicing",
433     "redundant_static_lifetimes",
434     "ref_binding_to_reference",
435     "ref_option_ref",
436     "repeat_once",
437     "rest_pat_in_fully_bound_structs",
438     "result_large_err",
439     "result_map_or_into_option",
440     "result_map_unit_fn",
441     "result_unit_err",
442     "return_self_not_must_use",
443     "reversed_empty_ranges",
444     "same_functions_in_if_condition",
445     "same_item_push",
446     "same_name_method",
447     "search_is_some",
448     "self_assignment",
449     "self_named_constructors",
450     "self_named_module_files",
451     "semicolon_if_nothing_returned",
452     "separated_literal_suffix",
453     "serde_api_misuse",
454     "shadow_reuse",
455     "shadow_same",
456     "shadow_unrelated",
457     "short_circuit_statement",
458     "should_implement_trait",
459     "significant_drop_in_scrutinee",
460     "similar_names",
461     "single_char_add_str",
462     "single_char_lifetime_names",
463     "single_char_pattern",
464     "single_component_path_imports",
465     "single_element_loop",
466     "single_match",
467     "single_match_else",
468     "size_of_in_element_count",
469     "skip_while_next",
470     "slow_vector_initialization",
471     "stable_sort_primitive",
472     "std_instead_of_alloc",
473     "std_instead_of_core",
474     "str_to_string",
475     "string_add",
476     "string_add_assign",
477     "string_extend_chars",
478     "string_from_utf8_as_bytes",
479     "string_lit_as_bytes",
480     "string_slice",
481     "string_to_string",
482     "strlen_on_c_strings",
483     "struct_excessive_bools",
484     "suboptimal_flops",
485     "suspicious_arithmetic_impl",
486     "suspicious_assignment_formatting",
487     "suspicious_else_formatting",
488     "suspicious_map",
489     "suspicious_op_assign_impl",
490     "suspicious_operation_groupings",
491     "suspicious_splitn",
492     "suspicious_to_owned",
493     "suspicious_unary_op_formatting",
494     "swap_ptr_to_ref",
495     "tabs_in_doc_comments",
496     "temporary_assignment",
497     "to_digit_is_some",
498     "to_string_in_format_args",
499     "todo",
500     "too_many_arguments",
501     "too_many_lines",
502     "toplevel_ref_arg",
503     "trailing_empty_array",
504     "trait_duplication_in_bounds",
505     "transmute_bytes_to_str",
506     "transmute_float_to_int",
507     "transmute_int_to_bool",
508     "transmute_int_to_char",
509     "transmute_int_to_float",
510     "transmute_num_to_bytes",
511     "transmute_ptr_to_ptr",
512     "transmute_ptr_to_ref",
513     "transmute_undefined_repr",
514     "transmutes_expressible_as_ptr_casts",
515     "transmuting_null",
516     "trim_split_whitespace",
517     "trivial_regex",
518     "trivially_copy_pass_by_ref",
519     "try_err",
520     "type_complexity",
521     "type_repetition_in_bounds",
522     "undocumented_unsafe_blocks",
523     "undropped_manually_drops",
524     "unicode_not_nfc",
525     "unimplemented",
526     "uninit_assumed_init",
527     "uninit_vec",
528     "uninlined_format_args",
529     "unit_arg",
530     "unit_cmp",
531     "unit_hash",
532     "unit_return_expecting_ord",
533     "unnecessary_cast",
534     "unnecessary_filter_map",
535     "unnecessary_find_map",
536     "unnecessary_fold",
537     "unnecessary_join",
538     "unnecessary_lazy_evaluations",
539     "unnecessary_mut_passed",
540     "unnecessary_operation",
541     "unnecessary_owned_empty_strings",
542     "unnecessary_self_imports",
543     "unnecessary_sort_by",
544     "unnecessary_to_owned",
545     "unnecessary_unwrap",
546     "unnecessary_wraps",
547     "unneeded_field_pattern",
548     "unneeded_wildcard_pattern",
549     "unnested_or_patterns",
550     "unreachable",
551     "unreadable_literal",
552     "unsafe_derive_deserialize",
553     "unsafe_removed_from_name",
554     "unseparated_literal_suffix",
555     "unsound_collection_transmute",
556     "unused_async",
557     "unused_io_amount",
558     "unused_peekable",
559     "unused_rounding",
560     "unused_self",
561     "unused_unit",
562     "unusual_byte_groupings",
563     "unwrap_in_result",
564     "unwrap_or_else_default",
565     "unwrap_used",
566     "upper_case_acronyms",
567     "use_debug",
568     "use_self",
569     "used_underscore_binding",
570     "useless_asref",
571     "useless_attribute",
572     "useless_conversion",
573     "useless_format",
574     "useless_let_if_seq",
575     "useless_transmute",
576     "useless_vec",
577     "vec_box",
578     "vec_init_then_push",
579     "vec_resize_to_zero",
580     "verbose_bit_mask",
581     "verbose_file_reads",
582     "vtable_address_comparisons",
583     "while_immutable_condition",
584     "while_let_loop",
585     "while_let_on_iterator",
586     "wildcard_dependencies",
587     "wildcard_enum_match_arm",
588     "wildcard_imports",
589     "wildcard_in_or_patterns",
590     "write_literal",
591     "write_with_newline",
592     "writeln_empty_string",
593     "wrong_self_convention",
594     "wrong_transmute",
595     "zero_divided_by_zero",
596     "zero_prefixed_literal",
597     "zero_ptr",
598     "zero_sized_map_values",
599     "zst_offset",
600
601 }