| Rule | Description | KPI |
|---|---|---|
| no-throw | Discourage use of “throw” statement for error flagging | security |
| no-tx-origin | Discourage use of “tx.origin” global variable | security |
| enforce-explicit-visibility | Encourage user to explicitly specify visibility of function | security |
| no-block-members | Discourage use of members “blockhash” & “timestamp” (and alias “now”) of “block” global variable List of members to warn against [“blockhash”, “timestamp”] | security |
| no-call-value | Discourage use of .call.value()() | security |
| no-assign-params | Disallow assigning to function parameters | security |
| no-fixed | Disallow fixed point types | security |
| no-inline-assembly | Discourage use of inline assembly | security |
| no-low-level-calls | Discourage the use of low-level functions – call(), callcode() & delegatecall() List of functions to warn against [“call”, “callcode”, “delegatecall”] | security |
| no-modify-for-iter-var | Discourage user to modify a for loop iteration counting variable in the loop body | security |
| no-send | Discourage the use of unsafe method “send” | security |
| no-sha3 | Encourage use of “keccak256()” over “sha3()” function | security |
| no-unreachable-code | Disallow unreachable code | security |
