Index
A
- abstract contracts / Abstract contracts
- address / Address
- address functions
- about / The address functions
- send method / The send method
- transfer method / The transfer method
- call method / The call method
- callcode method / The callcode method
- delegatecall method / The delegatecall method
- address global variables / Address global variables
- Application Binary Interface (ABI) / How are contracts deployed?, The call method
- application development life cycle management / Application development life cycle management
- arrays
- about / Arrays
- fixed arrays / Fixed arrays
- dynamic arrays / Dynamic arrays
- special arrays / Special arrays
- properties / Array properties
- structure / Structure of an array
- assert statement / The assert statement
B
- balance variable / Address global variables
- base contract / Inheritance
- blockchain
- decentralization / What is a blockchain?
- about / What is a blockchain?
- distributed / What is a blockchain?
- database / What is a blockchain?
- ledger / What is a blockchain?
- features / Why blockchains?
- architecture / Blockchain and Ethereum architecture
- genesis blocks / How are blocks related to each other?
- block explorer
- using / Using a Block Explorer
- block global variables
- blocks / Blocks
- Boolean / Boolean
- break statement / The break statement
- browser-solidity / How to write smart contracts?
- bytecode / Ethereum Virtual Machine
- byte data type / The byte data type
C
- C3 Linearization / Multiple inheritance
- callcode method
- reference / The callcode method
- call method / The call method
- Check-Deduct-Transfer (CDF) / The send method
- Check-Effects-Interaction / The send method
- child contract / Inheritance
- constant function / The view, constant, and pure functions
- constructors
- about / Constructors
- composition / Contract composition
- continue statement / The continue statement
- contract global variables / Contract global variables
- contract polymorphism / Contract polymorphism
- contracts
- about / What is a contract?, Contracts
- deploying / How are contracts deployed?
- structure / Structure of a contract, Structure
- state variables / State variables
- modifiers / Modifiers
- events / Events
- enumerations / Enumeration
- functions / Functions
- cryptography
- about / Cryptography
- symmetric cryptography / Symmetric encryption and decryption
- asymmetric decryption / Asymmetric encryption and decryption
- hashing / Hashing
- digital signatures / Digital signatures
- cryptography global variables / Cryptography global variables
D
- data location
- factors / Storage and memory data locations
- rules / Rule 1, Rule 6, Rule 7, Rule 8
- data structures, for variable storage
- storage / Storage and memory data locations
- memory / Storage and memory data locations
- call data / Storage and memory data locations
- stack / Storage and memory data locations
- data types, Solidity
- about / Data types in Solidity
- value types / Value types
- reference types / Reference types
- Decentralized Applications (DApp) / Enumerations
- delegatecall method
- reference / The delegatecall method
- derived class / Inheritance
- do...while loop / The do...while loop
- dynamic arrays / Dynamic arrays
E
- encapsulation / Encapsulation
- end-to-end transaction / An end-to-end transaction
- enumerations / Enumeration, Enumerations
- error handling
- about / Error handling
- require statement / The require statement
- assert statement / The assert statement
- revert statement / The revert statement
- Ether / Ether
- Ethereum
- architecture / Blockchain and Ethereum architecture
- nodes / Ethereum nodes
- accounts / Ethereum accounts
- reference / How to write smart contracts?, Using a Block Explorer
- networks / Ethereum networks
- documentation link / The view, constant, and pure functions
- Ethereum accounts
- externally owned accounts / Externally owned accounts
- contract accounts / Contract accounts
- Ethereum Natural Specification (Natspec)
- Ethereum networks
- main network / Main network
- test network / Test network
- consortium network / Consortium network
- Ethereum Virtual Machine (EVM) / Blockchain and Ethereum architecture, EVM, Ethereum Virtual Machine
- events
- about / Events, Events and logging
- watching, methods / Events and logging
- using / Using events
F
- fallback functions / The fallback function
- features, blockchains
- trust / Why blockchains?
- autonomy / Why blockchains?
- intermediaries / Why blockchains?
- first block / How are blocks related to each other?
- fixed arrays / Fixed arrays
- fixed sized byte array / The byte data type
- for loop / The for loop
- function input / Function input and output
- function output / Function input and output
- function polymorphism / Function polymorphism
- functions / Functions
G
- ganache-cli
- about / ganache-cli
- download link / ganache-cli
- gas / Gas
- gas cost / Gas
- gas price / Gas
- Geth
- about / Geth
- installing, on Windows / Installing Geth on Windows
H
- hashing process / Hashing
- hierarchical inheritance / Hierarchical inheritance
I
- if decision control / The if decision control
- implicitly typed variable / The var type variables
- import statement / The import statement
- inheritance
- about / Inheritance
- single inheritance / Single inheritance
- multi-level inheritance / Multi-level inheritance
- hierarchical inheritance / Hierarchical inheritance
- multiple inheritance / Multiple inheritance
- integers
- interfaces / Interfaces
K
- Kovan
- reference / Kovan
L
- literals / Literals
- logging / Events and logging
M
- major build number / Pragma
- mappings / Mappings
- message global variables / Transaction and message global variables
- MetaMask
- method overloading / Function polymorphism
- method overriding / Method overriding
- Method Resolution Order (MRO) / Multiple inheritance
- mining nodes / Ethereum mining nodes
- minor build number / Pragma
- Mist wallet
- reference / Mist wallet
- about / Mist wallet
- modifiers / Modifiers, Modifiers
- Morden / Ropsten
- multi-level inheritance / Multi-level inheritance
- multiple inheritance / Multiple inheritance
N
- node package manager (NPM) / ganache-cli
- nodes, Ethereum
- EVM / EVM
- mining nodes / Ethereum mining nodes
- mining process / How does mining work?
O
- object-oriented programming (OOP) / Solidity and Solidity files
P
- parent contract / Inheritance
- polymorphism
- about / Polymorphism
- function polymorphism / Function polymorphism
- contract polymorphism / Contract polymorphism
- pragma / Pragma
- private network
- creating / Creating a private network
- Proof of Authority (PoA) / How does mining work?
- Proof of Stake (PoS) / How does mining work?
- Proof of Work (PoW) / How does mining work?
- protocols, for JSON RPC connectivity
- Inter Process Communication (IPC) / Installing Geth on Windows
- Remote Procedure Calls (RPC) / Installing Geth on Windows
- Web Sockets (WS) / Installing Geth on Windows
- pure functions / The view, constant, and pure functions
R
- reference type variable
- passing by reference / Passing by reference
- Remix
- reference / How to write smart contracts?
- Remix editor
- using / The Remix editor
- require statement / The require statement
- return statement / The return statement
- revert statement / The revert statement
- Rinkeby / Rinkeby
- Ropsten / Ropsten
S
- send method / The send method
- single inheritance / Single inheritance
- smart contract
- about / What is a smart contract?, Smart contracts
- writing / How to write smart contracts?, Writing a simple contract
- creating / Creating contracts
- new keyword, using / Using the new keyword
- address, using / Using address of a contract
- Solidity
- about / Solidity and Solidity files
- data types / Data types in Solidity
- expressions / Solidity expressions
- Solidity compiler / Solidity compiler
- Solidity contracts, debugging
- about / Debugging
- Remix editor, using / The Remix editor
- events, using / Using events
- Solidity file
- about / Solidity and Solidity files
- pragma / Pragma
- comments / Comments
- import statement / The import statement
- contracts / Contracts
- special arrays
- about / Special arrays
- bytes array / The bytes array
- String array / The String array
- state mutability / The view, constant, and pure functions
- state variable / State variables
- structure / Structure
T
- test network
- about / Test network
- Ropsten / Ropsten
- Rinkeby / Rinkeby
- Kovan / Kovan
- transaction
- and block, relation / How are transactions and blocks related to each other?
- about / Transactions
- types / Transactions
- properties / Transactions
- transaction global variables
- transaction Merkle root hash / How are transactions and blocks related to each other?
- transfer method / The transfer method
- Truffle
- about / Truffle
- used, for development / Development with Truffle
- used, for testing / Testing with Truffle
- tx.origin global variable
- and msg.sender, differentiating between / Difference between tx.origin and msg.sender
- type conversion
- about / Type conversion
- implicit conversion / Implicit conversion
- explicit conversion / Explicit conversion
U
- unit testing / Testing with Truffle
- unsigned integer / State variables
V
- value types
- about / Value types
- passing by value / Passing by value
- variables
- hosting / Variables hoisting
- scoping / Variable scoping
- var type variables / The var type variables
- view function / The view, constant, and pure functions
W
- web3 JavaScript library / The web3 JavaScript library
- wei
- reference / Ether
- while loop / The while loop
- Windows
- Geth installation / Installing Geth on Windows