Solidity
v0.7.6
Basics
Introduction to Smart Contracts
Installing the Solidity Compiler
Solidity by Example
Language Description
Layout of a Solidity Source File
Structure of a Contract
Types
Units and Globally Available Variables
Expressions and Control Structures
Contracts
Inline Assembly
Cheatsheet
Language Grammar
Internals
Layout of State Variables in Storage
Layout in Memory
Layout of Call Data
Cleaning Up Variables
Source Mappings
The Optimiser
Contract Metadata
Contract ABI Specification
Additional Material
Solidity v0.5.0 Breaking Changes
Solidity v0.6.0 Breaking Changes
Solidity v0.7.0 Breaking Changes
NatSpec Format
Security Considerations
Resources
Using the compiler
Yul
Style Guide
Common Patterns
List of Known Bugs
Contributing
Solidity Brand Guide
Keyword Index
Solidity
Docs
»
Index
Edit on GitHub
Index
A
|
B
|
C
|
D
|
E
|
F
|
G
|
H
|
I
|
J
|
K
|
L
|
M
|
N
|
O
|
P
|
R
|
S
|
T
|
U
|
V
|
W
|
Y
A
abi
,
[1]
,
[2]
abstract contract
access
restricting
account
addmod
,
[1]
address
,
[1]
,
[2]
anonymous
application binary interface
array
,
[1]
,
[2]
allocating
length
literals
pop
push
slice
array of strings
asm
,
[1]
assembly
,
[1]
assembly-statement (Antlr4 production rule)
assert
,
[1]
,
[2]
assignment
,
[1]
destructuring
auction
blind
open
B
balance
,
[1]
,
[2]
,
[3]
ballot
base
constructor
base class
blind auction
block
,
[1]
,
[2]
number
,
[1]
timestamp
,
[1]
block (Antlr4 production rule)
bool
boolean-literal (Antlr4 production rule)
break
break-statement (Antlr4 production rule)
Bugs
byte array
bytes
,
[1]
bytes32
C
C3 linearization
call
,
[1]
call-argument-list (Antlr4 production rule)
callcode
,
[1]
,
[2]
cast
catch-clause (Antlr4 production rule)
coding style
coin
coinbase
,
[1]
commandline compiler
comment
common subexpression elimination
compile target
compiler
commandline
constant
,
[1]
constant propagation
constant-variable-declaration (Antlr4 production rule)
constructor
,
[1]
arguments
constructor-definition (Antlr4 production rule)
continue
continue-statement (Antlr4 production rule)
contract
,
[1]
abstract
base
creation
interface
modular
contract creation
contract type
contract verification
contract-body-element (Antlr4 production rule)
contract-definition (Antlr4 production rule)
contracts
creating
creationCode
cryptography
,
[1]
D
data
,
[1]
data-location (Antlr4 production rule)
days
deactivate
decimal-number (Antlr4 production rule)
declarations
default value
delegatecall
,
[1]
,
[2]
,
[3]
delete
deriving
difficulty
,
[1]
do-while-statement (Antlr4 production rule)
do/while
double-quoted-printable (Antlr4 production rule)
dynamic array
E
ecrecover
,
[1]
elementary-type-name (Antlr4 production rule)
else
emit-statement (Antlr4 production rule)
encode
encoding
enum
,
[1]
enum-definition (Antlr4 production rule)
errors
escape-sequence (Antlr4 production rule)
escrow
ether
ethereum virtual machine
event
,
[1]
,
[2]
event-definition (Antlr4 production rule)
event-parameter (Antlr4 production rule)
evm
EVM version
evmasm
,
[1]
exception
experimental
expression (Antlr4 production rule)
expression-statement (Antlr4 production rule)
external
,
[1]
F
fallback function
fallback-function-definition (Antlr4 production rule)
false
finney
fixed
fixed point number
fixed-bytes (Antlr4 production rule)
for
for-statement (Antlr4 production rule)
function
call
,
[1]
external
fallback
getter
internal
modifier
,
[1]
,
[2]
,
[3]
pure
receive ! receive
view
function parameter
function type
function-definition (Antlr4 production rule)
function-type-name (Antlr4 production rule)
functions
G
gas
,
[1]
,
[2]
gas price
,
[1]
,
[2]
getter
function
goto
gwei
H
hex-number (Antlr4 production rule)
hex-string (Antlr4 production rule)
hex-string-literal (Antlr4 production rule)
hours
I
identifier (Antlr4 production rule)
,
[1]
if
if-statement (Antlr4 production rule)
import
import-directive (Antlr4 production rule)
indexed
inheritance
multiple
inheritance-specifier (Antlr4 production rule)
inline
arrays
inline-array-expression (Antlr4 production rule)
installing
instruction
int
integer
interface contract
interface-definition (Antlr4 production rule)
internal
,
[1]
iterable mappings
iulia
J
julia
K
keccak256
,
[1]
L
length
library
,
[1]
,
[2]
library-definition (Antlr4 production rule)
license
linearization
linker
literal
,
[1]
,
[2]
address
rational
string
literal (Antlr4 production rule)
location
log
,
[1]
lvalue
M
mapping
,
[1]
,
[2]
mapping-key-type (Antlr4 production rule)
mapping-type (Antlr4 production rule)
memory
,
[1]
message call
metadata
minutes
modifier-definition (Antlr4 production rule)
modifier-invocation (Antlr4 production rule)
modifiers
modular contract
module
msg
,
[1]
mulmod
,
[1]
N
natspec
new
,
[1]
non-empty-string-literal (Antlr4 production rule)
number
,
[1]
number-literal (Antlr4 production rule)
number-unit (Antlr4 production rule)
O
open auction
optimizer
origin
,
[1]
overload
override-specifier (Antlr4 production rule)
overriding
function
modifier
P
packed
parameter
function
input
output
parameter-list (Antlr4 production rule)
path (Antlr4 production rule)
payable
pop
pragma
,
[1]
,
[2]
pragma-token (Antlr4 production rule)
precedence
private
,
[1]
public
,
[1]
purchase
pure
pure function
push
R
receive ether function
receive-function-definition (Antlr4 production rule)
reference type
remote purchase
require
,
[1]
,
[2]
return
,
[1]
return array
return string
return struct
return variable
return-statement (Antlr4 production rule)
revert
,
[1]
,
[2]
ripemd160
,
[1]
runtimeCode
S
scoping
seconds
self-destruct
selfdestruct
,
[1]
,
[2]
send
,
[1]
,
[2]
sender
,
[1]
set
sha256
,
[1]
signed-integer-type (Antlr4 production rule)
single-quoted-printable (Antlr4 production rule)
solc
Solidity (Antlr4 grammar)
SolidityLexer (Antlr4 lexer grammar)
source file
source mappings
source-unit (Antlr4 production rule)
spdx
stack
state machine
state variable
,
[1]
state-mutability (Antlr4 production rule)
state-variable-declaration (Antlr4 production rule)
statement (Antlr4 production rule)
staticcall
,
[1]
storage
,
[1]
,
[2]
,
[3]
string
,
[1]
,
[2]
string-literal (Antlr4 production rule)
,
[1]
struct
,
[1]
,
[2]
,
[3]
struct-definition (Antlr4 production rule)
struct-member (Antlr4 production rule)
style
subcurrency
super
switch
symbol-aliases (Antlr4 production rule)
szabo
T
this
,
[1]
throw
time
timestamp
,
[1]
transaction
,
[1]
transfer
,
[1]
true
try-statement (Antlr4 production rule)
tuple-expression (Antlr4 production rule)
type
,
[1]
contract
conversion
function
reference
struct
value
type-name (Antlr4 production rule)
U
ufixed
uint
unicode-string-literal (Antlr4 production rule)
,
[1]
unsigned-integer-type (Antlr4 production rule)
user-defined-type-name (Antlr4 production rule)
using for
,
[1]
using-directive (Antlr4 production rule)
V
value
,
[1]
value type
variable
return
variable-declaration (Antlr4 production rule)
variable-declaration-statement (Antlr4 production rule)
variable-declaration-tuple (Antlr4 production rule)
variably sized array
version
view
view function
visibility
,
[1]
(Antlr4 production rule)
voting
W
weeks
wei
while
while-statement (Antlr4 production rule)
withdrawal
Y
years
yul
yul-assignment (Antlr4 production rule)
yul-block (Antlr4 production rule)
yul-boolean (Antlr4 production rule)
yul-decimal-number (Antlr4 production rule)
yul-evm-builtin (Antlr4 production rule)
yul-expression (Antlr4 production rule)
yul-for-statement (Antlr4 production rule)
yul-function-call (Antlr4 production rule)
yul-function-definition (Antlr4 production rule)
yul-hex-number (Antlr4 production rule)
yul-identifier (Antlr4 production rule)
yul-if-statement (Antlr4 production rule)
yul-literal (Antlr4 production rule)
yul-path (Antlr4 production rule)
yul-statement (Antlr4 production rule)
yul-string-literal (Antlr4 production rule)
yul-switch-statement (Antlr4 production rule)
yul-variable-declaration (Antlr4 production rule)