Skip to content

Latest commit

 

History

History
41 lines (37 loc) · 1000 Bytes

solidity.md

File metadata and controls

41 lines (37 loc) · 1000 Bytes

Solidity

Installation:

git clone --recursive  https://github.com/ethereum/solidity.git
cd solidity
./scripts/install_deps.sh
mkdir  build
cd build
cmake .. &&  make

Structure d'un contrat:

  • Variable d'état (stockée dans le contrat):
uint data
  • Fonctions: partie exécutable d'un contrat:
function <name>(<param_types>) [internal|external] [constant] [payable] [returns (<return types>)] {...}

Par défaut une fonction est internal

  • Modifiers: modifier le champ d'une fonction:
modifier onlyBefore(uint t) { if (now >= t) throw; _;  }
function bid() onlyBefore(time) {...}
  • Events: utiliser les log services de l'EVM:
event  AuctionEnded(address  winner, uint  amount);
  • Structs: regroupement de plusieurs variables
struct Voter { uint  weight; bool voted; uint vote; }
  • Enums: type de données avec un nombre fini de valeurs possibles
enum  State  { Created, Locked, Inactive }