Summary
Once again, this was a dense chapter that focused primarily on the usage of functions along with modifiers and the way they help in writing code that improves overall readability and logic flow. Solidity provides special functions, the fallback
and receive
functions, within contracts, and they were covered with examples of their usage.
Functions can be constrained using the pure
, constant
, and view
modifiers, which limit the activity possible within a function. State variables and functions can have different visibility scopes such as private, internal, public, and external (although state variables are never external) that constrain their visibility and limits them to only certain types of callers.
The functions related to the address
type can be intimidating, especially when you consider their multiple variations and their relationship with the fallback
functions. If you are implementing a fallback
or receive
function, remember to pay special attention to testing them...