1.
Welcome!
2.
Installation
❱
2.1.
Fuelup
2.2.
Cargo
2.3.
From Source
2.4.
Fuel Core
3.
Program Types
❱
3.1.
Smart Contract
3.2.
Library
❱
3.2.1.
Internal Libraries
3.2.2.
External Libraries
3.3.
Script
3.4.
Predicate
4.
Built-in Types
❱
4.1.
Numerics
4.2.
Booleans
4.3.
Strings
4.4.
Bytes
4.5.
Tuples
4.6.
Arrays
4.7.
Structs
4.8.
Enums
5.
Variables
❱
5.1.
let
5.2.
const
5.3.
Shadowing
6.
Comments
7.
Functions
❱
7.1.
Functions
7.2.
Methods
7.3.
Associated Functions
7.4.
Returning from functions
8.
Control Flow
❱
8.1.
if expressions
8.2.
match
❱
8.2.1.
Single Line Arm
8.2.2.
Multi Line Arm
8.2.3.
Complex Patterns
❱
8.2.3.1.
Enums
8.2.3.2.
Structs
8.2.3.3.
Constants
8.2.3.4.
Nested Expressions
8.2.3.5.
Multiple Values
8.3.
Looping
❱
8.3.1.
while
8.3.2.
break
8.3.3.
continue
9.
Annotations
❱
9.1.
Types
9.2.
Attributes
❱
9.2.1.
Storage
9.2.2.
Payable
9.2.3.
Test
9.2.4.
Allow
9.2.5.
Inline
9.2.6.
Deprecated
10.
Traits
11.
Generics
12.
Style Guide
❱
12.1.
Naming Convention
12.2.
Type Annotations
12.3.
Struct Shorthand
12.4.
Enums
12.5.
Returning
12.6.
Pattern Matching
12.7.
Comments
12.8.
Getter Functions
12.9.
Unused Variables
12.10.
Intermediate Variables
13.
Storage
❱
13.1.
Initialization
13.2.
Reading & Writing
13.3.
Libraries
❱
13.3.1.
StorageMap
13.3.2.
StorageVec
13.3.3.
Store & Get
14.
Assertions
❱
14.1.
assert
14.2.
require
14.3.
revert
14.4.
assert_eq
14.5.
assert_ne
15.
Address Namespace
❱
15.1.
Address
15.2.
ContractId
15.3.
Identity
16.
Call Data
❱
16.1.
Message Sender
16.2.
Asset Sent
16.3.
Amount of Asset Sent
17.
Logging
18.
Calling Contracts
19.
Re-entrancy
20.
Asset Operations
❱
20.1.
Minting
❱
20.1.1.
Mint
20.1.2.
To Address
20.1.3.
To Contract
20.1.4.
To Address or Contract
20.2.
Burning
20.3.
Transfer
❱
20.3.1.
To Address
20.3.2.
To Contract
20.3.3.
To Address or Contract
20.4.
Contract Balance
21.
Hashing
❱
21.1.
sha256
21.2.
keccak256
22.
Signature Recovery
❱
22.1.
Fuel Address
22.2.
Ethereum Address
23.
Counter
24.
Fizzbuzz
25.
Contract Ownership
26.
Wallet
27.
Liquidity Pool
28.
Standard Library Prelude
29.
Language Comparison
❱
29.1.
Rust
29.2.
Solidity
30.
Software Development Kits
❱
30.1.
Rust SDK
30.2.
TypeScript SDK
31.
Advanced Concepts
❱
31.1.
Structs
31.2.
Enums
31.3.
Compiler Intrinsics
32.
Known Issues
❱
32.1.
General
32.2.
Missing Features
32.3.
Importing
32.4.
Strings
32.5.
Predicates
32.6.
Pattern Matching
32.7.
Storage
33.
Manifest Reference
Light
Rust
Coal
Navy
Ayu
The Sway Reference
Language Comparison