mirror of
				https://github.com/ethereum/solidity
				synced 2023-10-03 13:03:40 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			18 lines
		
	
	
		
			889 B
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			18 lines
		
	
	
		
			889 B
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. index:: contract, state variable, function, event, struct, enum, function;modifier
 | |
| 
 | |
| ***********************
 | |
| Structure of a Contract
 | |
| ***********************
 | |
| 
 | |
| Contracts in Solidity are similar to classes in object-oriented languages.
 | |
| Each contract can contain declarations of **state variables**, **functions**,
 | |
| **function modifiers**, **events**, **structs types** and **enum types**.
 | |
| Furthermore, contracts can inherit from other contracts.
 | |
| 
 | |
| * State variables are values which are permanently stored in contract storage.
 | |
| * Functions are the executable units of code within a contract.
 | |
| * Function modifiers can be used to amend the semantics of functions in a declarative way.
 | |
| * Events are convenience interfaces with the EVM logging facilities.
 | |
| * Structs are custom defined types that can group several variables.
 | |
| * Enums can be used to create custom types with a finite set of values.
 |