Jelajahi Sumber

Imports, base contracts, abstract, interface, and libraries

Added
- `import` directives are supported
- New `--importpath` command line argument to specify directories to search for imports
- Contracts can have base contracts
- Contracts can be abstract
- Interfaces are supported
- Libraries are supported
- The `using` library `for` type syntax is supported

Changed
- Solang now uses llvm 10.0 rather than llvm 8.0
- In line with Solidity 0.7.0, constructors no longer need a visibility argument

Signed-off-by: Sean Young <sean@mess.org>
Sean Young 5 tahun lalu
induk
melakukan
beea2bdb07
5 mengubah file dengan 8 tambahan dan 5 penghapusan
  1. 1 1
      CHANGELOG.md
  2. 1 1
      Cargo.toml
  3. 1 1
      docs/conf.py
  4. 2 2
      docs/installing.rst
  5. 3 0
      docs/language.rst

+ 1 - 1
CHANGELOG.md

@@ -2,7 +2,7 @@
 All notable changes to [Solang](https://github.com/hyperledger-labs/solang/)
 will be documented here.
 
-## Unreleased
+## [0.1.3]
 
 ### Added
 - `import` directives are supported

+ 1 - 1
Cargo.toml

@@ -1,6 +1,6 @@
 [package]
 name = "solang"
-version = "0.1.2"
+version = "0.1.3"
 authors = ["Sean Young <sean@mess.org>"]
 homepage = "https://github.com/hyperledger-labs/solang"
 documentation = "https://solang.readthedocs.io/"

+ 1 - 1
docs/conf.py

@@ -22,7 +22,7 @@ copyright = '2019, Sean Young <sean@mess.org>'
 author = 'Sean Young <sean@mess.org>'
 
 # The full version, including alpha/beta/rc tags
-release = '0.1.2'
+release = '0.1.3'
 
 
 # -- General configuration ---------------------------------------------------

+ 2 - 2
docs/installing.rst

@@ -9,11 +9,11 @@ Download release binaries
 
 For Ubuntu, there is an x86-64 binary available in the github releases:
 
-`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.2/solang_ubuntu>`_
+`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.3/solang_linux>`_
 
 For Windows x64, there is a pre-built binary available here:
 
-`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.2/solang.exe>`_
+`<https://github.com/hyperledger-labs/solang/releases/download/v0.1.3/solang.exe>`_
 
 Using hyperledgerlabs/solang docker hub images
 ----------------------------------------------

+ 3 - 0
docs/language.rst

@@ -1892,6 +1892,9 @@ As a result of this, any method call on a variable of type ``int32[100]`` will b
 For the call to match, the first argument of the function must match the variable; note that here, `bar`
 is of type ``storage``, since all contract variables are implicitly ``storage``.
 
+There is an alternative syntax ``using`` `library` ``for *;`` which binds the library functions to any
+variable that will match according to these rules.
+
 Sending and receiving value
 ---------------------------