index.rst 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. .. image:: hl_solang_horizontal-color.svg
  2. :width: 75%
  3. :alt: Hyperledger Solang Logo
  4. :align: center
  5. :target: https://github.com/hyperledger/solang
  6. |
  7. Solang Solidity Compiler
  8. ========================
  9. Welcome to the Solang Solidity Compiler. Using Solang, you can compile smart contracts written in
  10. `Solidity <https://en.wikipedia.org/wiki/Solidity>`_ for
  11. `Solana <https://www.solana.com/>`_ and
  12. `Parity Substrate <https://substrate.io/>`_. It uses the
  13. `llvm <https://www.llvm.org/>`_ compiler framework to produce WebAssembly
  14. (WASM) or BPF contract code. As result, the output is highly optimized, which saves you in gas costs
  15. or compute units.
  16. Solang aims for source file compatibility with the Ethereum EVM Solidity compiler,
  17. version 0.8. Where differences exists, this is noted in the language documentation.
  18. The source code repository can be found on `github <https://github.com/hyperledger/solang>`_
  19. and we have a `channel #solang on Hyperledger Discord <https://discord.gg/jhn4rkqNsT>`_.
  20. Contents
  21. ========
  22. .. toctree::
  23. :maxdepth: 3
  24. :caption: Using Solang
  25. installing
  26. running
  27. extension
  28. examples
  29. .. toctree::
  30. :maxdepth: 3
  31. :caption: Targets
  32. targets/solana.rst
  33. targets/substrate.rst
  34. .. toctree::
  35. :maxdepth: 3
  36. :caption: Solidity language
  37. language/introduction.rst
  38. language/file_structure.rst
  39. language/imports.rst
  40. language/pragmas.rst
  41. language/types.rst
  42. language/expressions.rst
  43. language/statements.rst
  44. language/constants.rst
  45. language/using.rst
  46. language/contracts.rst
  47. language/contract_storage.rst
  48. language/interface_libraries.rst
  49. language/events.rst
  50. language/functions.rst
  51. language/managing_values.rst
  52. language/builtins.rst
  53. language/tags.rst
  54. language/inline_assembly.rst
  55. .. toctree::
  56. :maxdepth: 3
  57. :caption: Yul language
  58. yul_language/yul.rst
  59. yul_language/statements.rst
  60. yul_language/types.rst
  61. yul_language/functions.rst
  62. yul_language/builtins.rst
  63. .. toctree::
  64. :maxdepth: 3
  65. :caption: Extras
  66. code_gen_options
  67. testing
  68. contributing