The fallback and receive functions
Both the fallback
and receive
functions are special type of functions available in Ethereum. The fallback
functions were available in previous versions; however, the receive
function is relatively new. They are special functions because we cannot invoke these functions directly by using their name. These functions do not accept any parameters or return any values. They must have external scope visibility, and they are defined without the function
keyword. Both the fallback
and receive
functions might sound similar in nature; however, their usage and intent are completely different.
Let's understand the fallback
function first. The fallback
functions are invoked automatically by the Ethereum Virtual Machine (EVM) when it finds a function call with a name that does not exist within the contract. When a function call is made and that function name does not exist within the contract, the fallback
function is invoked automatically. There can only...