forge_lint/sol/low/
mod.rs1use crate::sol::{EarlyLintPass, LateLintPass, SolLint};
2
3mod block_timestamp;
4use block_timestamp::BLOCK_TIMESTAMP;
5
6mod calls_loop;
7use calls_loop::CALLS_LOOP;
8
9mod delegatecall_loop;
10use delegatecall_loop::DELEGATECALL_LOOP;
11
12mod deprecated_oz_function;
13use deprecated_oz_function::DEPRECATED_OZ_FUNCTION;
14
15mod empty_block;
16use empty_block::EMPTY_BLOCK;
17
18pub(crate) mod incorrect_modifier;
19use incorrect_modifier::INCORRECT_MODIFIER;
20
21mod inconsistent_type_names;
22use inconsistent_type_names::INCONSISTENT_TYPE_NAMES;
23
24mod msg_value_loop;
25use msg_value_loop::MSG_VALUE_LOOP;
26
27mod missing_zero_check;
28use missing_zero_check::MISSING_ZERO_CHECK;
29
30mod missing_events_access_control;
31use missing_events_access_control::MISSING_EVENTS_ACCESS_CONTROL;
32
33mod missing_events_arithmetic;
34use missing_events_arithmetic::MISSING_EVENTS_ARITHMETIC;
35
36mod return_bomb;
37use return_bomb::RETURN_BOMB;
38
39mod payable_loop;
40
41mod reentrancy_events;
42use reentrancy_events::REENTRANCY_EVENTS;
43
44mod require_revert_in_loop;
45use require_revert_in_loop::REQUIRE_REVERT_IN_LOOP;
46
47mod solmate_safe_transfer_lib;
48use solmate_safe_transfer_lib::SOLMATE_SAFE_TRANSFER_LIB;
49
50register_lints!(
51 (BlockTimestamp, late, (BLOCK_TIMESTAMP)),
52 (CallsLoop, late, (CALLS_LOOP)),
53 (DelegatecallLoop, late, (DELEGATECALL_LOOP)),
54 (DeprecatedOzFunction, late, (DEPRECATED_OZ_FUNCTION)),
55 (EmptyBlock, early, (EMPTY_BLOCK)),
56 (IncorrectModifier, late, (INCORRECT_MODIFIER)),
57 (InconsistentTypeNames, project, (INCONSISTENT_TYPE_NAMES)),
58 (MsgValueLoop, late, (MSG_VALUE_LOOP)),
59 (MissingEventsAccessControl, late, (MISSING_EVENTS_ACCESS_CONTROL)),
60 (MissingEventsArithmetic, late, (MISSING_EVENTS_ARITHMETIC)),
61 (MissingZeroCheck, late, (MISSING_ZERO_CHECK)),
62 (ReturnBomb, late, (RETURN_BOMB)),
63 (ReentrancyEvents, late, (REENTRANCY_EVENTS)),
64 (RequireRevertInLoop, late, (REQUIRE_REVERT_IN_LOOP)),
65 (SolmateSafeTransferLib, late, (SOLMATE_SAFE_TRANSFER_LIB)),
66);