Fallback

Solidity

Définition

Fonction spéciale exécutée quand le contrat reçoit un appel à une fonction inexistante ou des données malformées. Déclarée avec fallback() external [payable]. Depuis Solidity 0.6, séparée de receive() (pour les paiements directs). Utilisée dans les proxies pour rediriger tous les appels vers l'implémentation.

Version anglaise

Special function executed when contract receives a call to a non-existent function or malformed data. Declared with fallback() external [payable]. Since Solidity 0.6, separated from receive() (for direct payments). Used in proxies to redirect all calls to implementation.

Exemple de Code

contract MyContract {
  event FallbackCalled(bytes data);

  // Reçoit les paiements directs
  receive() external payable {}

  // Appelé quand la fonction n'existe pas
  fallback() external payable {
    emit FallbackCalled(msg.data);
  }
}

// Proxy pattern
fallback() external payable {
  _delegate(implementation);
}

Pratique ce concept sur Solingo

Maîtrise Fallback avec des exercices interactifs et un IDE intégré.

Commencer gratuitement