index.rst 1.9 KB

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