Internal functions and modifiers are only reachable from the compilation unit, so their
parameters can be proven safe from the invocation sites seen there.
4-arg safeTransferFrom(token, address, address, uint256) where token is address (Solady)
or an ERC20 contract type (OpenZeppelin SafeERC20); ERC721/1155 helpers are excluded since
their transferFrom has no return value.
recv.transferFrom(from, to, amt) / recv.safeTransferFrom(from, to, amt) on a contract
declaring ERC20βs transferFrom(address,address,uint256) returns (bool) (ERC721βs same-named
overload is excluded), addr.safeTransferFrom(..) via using SafeTransferLib for address,
or the library form Lib.safeTransferFrom(token, from, to, amt).
True when expr is base(..) or a variable in vars, through parens, payable(..), casts,
ternaries whose both arms qualify and no-arg helpers whose body returns such an expression.
Per internal function, whether every call site passes a statically safe / self argument for
each parameter; None when some call site could not be matched to the parameters.