.. image:: hl_solang_horizontal-color.svg :width: 75% :alt: Hyperledger Solang Logo :align: center :target: https://github.com/hyperledger/solang | Solang Solidity Compiler ======================== Welcome to the Solang Solidity Compiler. Using Solang, you can compile smart contracts written in `Solidity `_ for `Solana `_ and `Polkadot `_. It uses the `llvm `_ compiler framework to produce WebAssembly (WASM) or Solana SBF contract code. As result, the output is highly optimized, which saves you in gas costs or compute units. Solang aims for source file compatibility with the Ethereum EVM Solidity compiler, version 0.8. Where differences exist, this is noted in the language documentation. The source code repository can be found on `github `_ and we have solang channels on `Hyperledger Discord `_. Contents ======== .. toctree:: :maxdepth: 3 :caption: Using Solang installing running extension examples .. toctree:: :maxdepth: 3 :caption: Targets targets/solana.rst targets/polkadot.rst .. toctree:: :maxdepth: 3 :caption: Solidity language language/introduction.rst language/file_structure.rst language/imports.rst language/pragmas.rst language/types.rst language/expressions.rst language/statements.rst language/constants.rst language/using.rst language/contracts.rst language/contract_storage.rst language/interface_libraries.rst language/events.rst language/functions.rst language/managing_values.rst language/builtins.rst language/tags.rst language/inline_assembly.rst .. toctree:: :maxdepth: 3 :caption: Yul language yul_language/yul.rst yul_language/statements.rst yul_language/types.rst yul_language/functions.rst yul_language/builtins.rst .. toctree:: :maxdepth: 3 :caption: Extras code_gen_options testing contributing