1// Copyright (c) 2020, The rav1e contributors. All rights reserved
2//
3// This source code is subject to the terms of the BSD 2 Clause License and
4// the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
5// was not distributed with this source code in the LICENSE file, you can
6// obtain it at www.aomedia.org/license/software. If the Alliance for Open
7// Media Patent License 1.0 was not distributed with this source code in the
8// PATENTS file, you can obtain it at www.aomedia.org/license/patent.
9
10// Safety lints
11#![deny(bare_trait_objects)]
12#![deny(clippy::as_ptr_cast_mut)]
13#![deny(clippy::large_stack_arrays)]
14// Performance lints
15#![warn(clippy::inefficient_to_string)]
16#![warn(clippy::invalid_upcast_comparisons)]
17#![warn(clippy::iter_with_drain)]
18#![warn(clippy::linkedlist)]
19#![warn(clippy::mutex_integer)]
20#![warn(clippy::naive_bytecount)]
21#![warn(clippy::needless_bitwise_bool)]
22#![warn(clippy::needless_collect)]
23#![warn(clippy::or_fun_call)]
24#![warn(clippy::stable_sort_primitive)]
25#![warn(clippy::suboptimal_flops)]
26#![warn(clippy::trivial_regex)]
27#![warn(clippy::trivially_copy_pass_by_ref)]
28#![warn(clippy::unnecessary_join)]
29#![warn(clippy::unused_async)]
30#![warn(clippy::zero_sized_map_values)]
31// Correctness lints
32#![deny(clippy::case_sensitive_file_extension_comparisons)]
33#![deny(clippy::copy_iterator)]
34#![deny(clippy::expl_impl_clone_on_copy)]
35#![deny(clippy::float_cmp)]
36#![warn(clippy::imprecise_flops)]
37#![deny(clippy::manual_instant_elapsed)]
38#![deny(clippy::mem_forget)]
39#![deny(clippy::path_buf_push_overwrite)]
40#![deny(clippy::same_functions_in_if_condition)]
41#![deny(clippy::unchecked_duration_subtraction)]
42#![deny(clippy::unicode_not_nfc)]
43// Clarity/formatting lints
44#![warn(clippy::checked_conversions)]
45#![warn(clippy::derive_partial_eq_without_eq)]
46#![allow(clippy::enum_variant_names)]
47#![warn(clippy::explicit_deref_methods)]
48#![warn(clippy::filter_map_next)]
49#![warn(clippy::flat_map_option)]
50#![warn(clippy::fn_params_excessive_bools)]
51#![warn(clippy::implicit_clone)]
52#![warn(clippy::iter_not_returning_iterator)]
53#![warn(clippy::iter_on_empty_collections)]
54#![warn(clippy::macro_use_imports)]
55#![warn(clippy::manual_clamp)]
56#![warn(clippy::manual_let_else)]
57#![warn(clippy::manual_ok_or)]
58#![warn(clippy::manual_string_new)]
59#![warn(clippy::map_flatten)]
60#![warn(clippy::match_bool)]
61#![warn(clippy::mut_mut)]
62#![warn(clippy::needless_borrow)]
63#![warn(clippy::needless_continue)]
64#![warn(clippy::range_minus_one)]
65#![warn(clippy::range_plus_one)]
66#![warn(clippy::ref_binding_to_reference)]
67#![warn(clippy::ref_option_ref)]
68#![warn(clippy::trait_duplication_in_bounds)]
69#![warn(clippy::unused_peekable)]
70#![warn(clippy::unused_rounding)]
71#![warn(clippy::unused_self)]
72#![allow(clippy::upper_case_acronyms)]
73#![warn(clippy::verbose_bit_mask)]
74#![warn(clippy::verbose_file_reads)]
75// Documentation lints
76#![warn(clippy::doc_link_with_quotes)]
77#![warn(clippy::doc_markdown)]
78#![warn(clippy::missing_errors_doc)]
79#![warn(clippy::missing_panics_doc)]
80
81pub mod frame;
82pub mod math;
83pub mod pixel;
84pub mod plane;
85
86pub mod prelude {
87 pub use crate::math::*;
88 pub use crate::pixel::*;
89}
90