1#![doc = include_str!("../README.md")]
2#![allow(unknown_lints)]
7#![deny(
8 clippy::await_holding_lock,
9 clippy::borrow_as_ptr,
10 clippy::branches_sharing_code,
11 clippy::cast_lossless,
12 clippy::clippy::collection_is_never_read,
13 clippy::cloned_instead_of_copied,
14 clippy::cognitive_complexity,
15 clippy::create_dir,
16 clippy::deref_by_slicing,
17 clippy::derivable_impls,
18 clippy::derive_partial_eq_without_eq,
19 clippy::equatable_if_let,
20 clippy::exhaustive_structs,
21 clippy::expect_used,
22 clippy::expl_impl_clone_on_copy,
23 clippy::explicit_deref_methods,
24 clippy::explicit_into_iter_loop,
25 clippy::explicit_iter_loop,
26 clippy::filetype_is_file,
27 clippy::flat_map_option,
28 clippy::format_push_string,
29 clippy::fn_params_excessive_bools,
30 clippy::future_not_send,
31 clippy::get_unwrap,
32 clippy::implicit_clone,
33 clippy::if_then_some_else_none,
34 clippy::impl_trait_in_params,
35 clippy::implicit_clone,
36 clippy::inefficient_to_string,
37 clippy::inherent_to_string,
38 clippy::iter_not_returning_iterator,
39 clippy::large_types_passed_by_value,
40 clippy::large_include_file,
41 clippy::let_and_return,
42 clippy::manual_assert,
43 clippy::manual_ok_or,
44 clippy::manual_split_once,
45 clippy::manual_let_else,
46 clippy::manual_string_new,
47 clippy::map_flatten,
48 clippy::map_unwrap_or,
49 clippy::missing_enforced_import_renames,
50 clippy::missing_assert_message,
51 clippy::missing_const_for_fn,
52 clippy::must_use_candidate,
53 clippy::mut_mut,
54 clippy::needless_for_each,
55 clippy::needless_option_as_deref,
56 clippy::needless_pass_by_value,
57 clippy::needless_collect,
58 clippy::needless_continue,
59 clippy::non_send_fields_in_send_ty,
60 clippy::nonstandard_macro_braces,
61 clippy::option_if_let_else,
62 clippy::option_option,
63 clippy::rc_mutex,
64 clippy::redundant_else,
65 clippy::same_name_method,
66 clippy::semicolon_if_nothing_returned,
67 clippy::str_to_string,
68 clippy::string_to_string,
69 clippy::too_many_lines,
70 clippy::trivially_copy_pass_by_ref,
71 clippy::trivial_regex,
72 clippy::try_err,
73 clippy::unnested_or_patterns,
74 clippy::unused_async,
75 clippy::unwrap_or_else_default,
76 clippy::useless_let_if_seq,
77 bad_style,
78 clashing_extern_declarations,
79 dead_code,
80 deprecated,
81 explicit_outlives_requirements,
82 improper_ctypes,
83 invalid_value,
84 missing_copy_implementations,
85 missing_debug_implementations,
86 mutable_transmutes,
87 no_mangle_generic_items,
88 non_shorthand_field_patterns,
89 overflowing_literals,
90 path_statements,
91 patterns_in_fns_without_body,
92 private_in_public,
93 trivial_bounds,
94 trivial_casts,
95 trivial_numeric_casts,
96 type_alias_bounds,
97 unconditional_recursion,
98 unreachable_pub,
99 unsafe_code,
100 unstable_features,
101 unused,
102 unused_allocation,
103 unused_comparisons,
104 unused_import_braces,
105 unused_parens,
106 unused_qualifications,
107 while_true,
108 missing_docs
109)]
110#![warn(clippy::exhaustive_enums)]
111#![allow(unused_attributes, clippy::derive_partial_eq_without_eq, clippy::box_default)]
112#![allow()]
115
116mod error;
117mod performance;
118#[cfg(feature = "derive_serde")]
119pub(crate) mod serde;
120
121pub use error::Error;
122pub use performance::{Performance, PerformanceMark, PerformancePeriod};