1. Introduction
  2. 1. Introduction
  3. 2. What Is Yul?
  4. 3. Why Is Yul Important?
  5. 4. Yul's Advantages
  6. 5. Yul's Disadvantage
  7. 6. Code Layout
  8. Authors
  9. 7. Authors
  10. Solidity's Storage And Memory
  11. 8. Solidity's Storage And Memory
  12. 9. Solidity's Storage And Memory Layout
  13. 10. Using Yul To Read And Write Directly To Storage And Memory
  14. Yul Implementations
  15. 11. Starting Yul In A Smart Contract
  16. 12. Variable Storage In Storage
    1. 12.1. uint8, uint128, uint256
    2. 12.2. int8, int128, int256
    3. 12.3. bytes1, bytes16, bytes32
    4. 12.4. bytes
    5. 12.5. string
    6. 12.6. address
    7. 12.7. struct
    8. 12.8. mapping
    9. 12.9. enum
    10. 12.10. Custom Types
    11. 12.11. Arrays
  17. 13. Variable Storage In Memory
    1. 13.1. uint8, uint128, uint256
    2. 13.2. int8, int128, int256
    3. 13.3. bytes1, bytes16, bytes32
    4. 13.4. bytes
    5. 13.5. string
    6. 13.6. address
    7. 13.7. Custom Types
    8. 13.8. Arrays
    9. 13.9. Order Of Memory And Calldata Storage
    10. 13.10. struct
  18. 14. Yul Actions
    1. 14.1. Addition
    2. 14.2. Subtraction
    3. 14.3. Multiplication
    4. 14.4. Division
    5. 14.5. Bitwise
    6. 14.6. Conditionals
    7. 14.7. Functions
    8. 14.8. Loops
    9. 14.9. Errors
    10. 14.10. Hash
    11. 14.11. Is Contract
    12. 14.12. Ether Balance
    13. 14.13. Events
    14. 14.14. Send Ether
    15. 14.15. Signature Verification
    16. 14.16. call
    17. 14.17. staticcall
    18. 14.18. delegatecall
  19. Sources And References
  20. 15. Sources And References

Yul By Example

Sources And References


  1. Yul (https://docs.soliditylang.org/en/latest/yul.html#yul).
  2. What is Yul? (https://www.quicknode.com/guides/ethereum-development/smart-contracts/what-is-yul#what-is-yul).
  3. Solidity Docs - Layout In Memory (https://docs.soliditylang.org/en/latest/internals/layout_in_memory.html).
  4. Solidity Docs - bytes and string (https://docs.soliditylang.org/en/latest/internals/layout_in_storage.html#bytes-and-string).
  5. Solidity Docs - User Defined Value Types (https://docs.soliditylang.org/en/latest/types.html#user-defined-value-types).
  6. OpenZeppelin Safe Math (https://github.com/ConsenSysMesh/openzeppelin-solidity/blob/master/contracts/math/SafeMath.sol).
  7. Solidity By Example (https://solidity-by-example.org/signature/).




Christ is King!