41 Commits

Author SHA1 Message Date
Thomas Arts
66528c8a6a Move translate_vm to aeso_vm_decode 2019-06-20 13:10:08 +02:00
Thomas Arts
46c746da1c Refactor string_to_code 2019-06-20 13:10:08 +02:00
Thomas Arts
1c346af85e whitespaces 2019-06-20 13:10:08 +02:00
Thomas Arts
a34558412d Arguments are in the body of the call, use term_to_fate before serializing them 2019-06-14 12:41:21 +02:00
Thomas Arts
95c41b8eee Avoid hash collisions in calldata creation 2019-06-14 12:41:21 +02:00
Thomas Arts
46963a8326 Update aeso_compiler 2019-06-11 15:25:01 +02:00
Hans Svensson
3e2281a834 Make fate-backend also return a Map 2019-06-10 15:13:34 +02:00
Hans Svensson
bb4ef61a50 Allow negative literals in calldata and result 2019-06-03 09:08:53 +02:00
Hans Svensson
758fecbb9b
Merge pull request #75 from aeternity/fix_aci
Restructure and improve ACI
2019-05-31 11:33:07 +02:00
Ulf Norell
bea524635b Add backend argument (aevm | fate) to aeso_compiler options
and test fate backend on (most) compilable contracts
2019-05-28 16:40:54 +02:00
Hans Svensson
c60999edf0 Refactor aeso_aci with dont_unfold, etc. 2019-05-28 11:08:36 +02:00
Ulf Norell
389072fb12 Add stateful to __call 2019-05-14 09:32:52 +02:00
Hans Svensson
3255c62e0e Revert bytes(N) from icode/vm-types 2019-04-23 17:47:50 +02:00
Hans Svensson
4324bfd49e Add bytes(int), add address_literalsm add ecverify_secp25k1
hash -> bytes(32)
signature -> bytes(64)
address literals
2019-04-23 10:40:02 +02:00
Robert Virding
9f5f8d4444 Change function references from aeso_sophia to aeb_aevm_data 2019-04-02 16:00:10 +02:00
Robert Virding
0d8b7c7c79 First commit fixinng references from aeso_ to aeb_
Also remove local copies of modules moved to aebytecode.
2019-04-02 15:59:12 +02:00
Hans Svensson
a089af555f More better type specs 2019-03-13 19:57:27 +01:00
Hans Svensson
cd116b23d7 add aeso_compiler:decode_calldata/3 2019-03-13 16:15:48 +01:00
Hans Svensson
f266c5eed8 Add a VERSION file at the top level and go from there 2019-03-04 12:17:54 +01:00
Ulf Norell
c2a5ed28cf please dialyzer 2019-03-01 11:07:46 +01:00
Ulf Norell
56f70fea6c test oracle calldata fixes 2019-03-01 09:36:43 +01:00
Ulf Norell
9e908369ec check create_calldata contract without the __call function first 2019-03-01 09:21:56 +01:00
Hans Svensson
eb77a73d15 Correctly handle ArgTypes in create_calldata 2019-02-28 14:44:16 +01:00
Hans Svensson
6d6fff2612 Better error handling when init is present but wrong 2019-02-28 09:56:16 +01:00
Hans Svensson
95bf0d4b6c Fix handling of init in create_calldata 2019-02-27 20:42:42 +01:00
Hans Svensson
a263b09e57 Remove leftover io:format 2019-02-27 11:00:00 +01:00
Hans Svensson
5a3c8530b4 Dialyzer found an error 2019-02-26 21:03:52 +01:00
Ulf Norell
e0fff00e64 get rid of byte code argument to create_calldata
This means that there is less type checking at calldata creation time.
Make sure that we check that the function hash exists before calling
a contract!
2019-02-26 17:31:53 +01:00
Ulf Norell
5a4a84805f change create_calldata function to also take fun name and arguments 2019-02-26 15:01:27 +01:00
Ulf Norell
cc3e322179 new version of to_sophia_value
takes function name and binary blob
2019-02-26 14:34:57 +01:00
Ulf Norell
ccad660eac add compiler function to translate a vm value to Sophia AST 2019-02-25 14:23:23 +01:00
Ulf Norell
236ef6eb89 Dialyzed! 2019-02-08 14:16:06 +01:00
Ulf Norell
aa6d56ce9b Allow passing an explicit "file system" for included files to the compiler 2019-02-08 14:16:06 +01:00
Hans Svensson
2b7490776e Add include directive
Add an include directive to include namespaces into a contract. Only allowed at the top level.

To allow includes, either call through aeso_compiler:file or set the option `allow_include` (and add `include_path`(s)).
2019-02-08 14:16:06 +01:00
Ulf Norell
d9188d58a7 Proper checking of types 2019-02-08 14:16:06 +01:00
Ulf Norell
367f87b612 Implement namespaces
This includes a massive refactoring of the type checker, getting
rid of most of the ets tables and keeping a proper environment.
2019-02-08 14:16:06 +01:00
Robert Virding
515f444e7c Remove specific filename extension handling
And take the chance to make file handling errors ahve the same format
as other errors.
2019-02-06 14:02:46 +01:00
Ulf Norell
3a7c8f905a Fix incorrect type specs
h/t OTP-21 dialyzer
2019-01-28 14:54:34 +01:00
Hans Svensson
f1f2b09294 Cleanup whitespace, bad typespec, and remaining enacl reference 2019-01-28 10:50:32 +01:00
Robert Virding
fe1a2758c3 Improve the interface to the compiler
It is now more consistent though we can still discuss how we want the
interface to look.
2019-01-25 16:16:20 +01:00
Robert Virding
d4d02fd576 First test work commit, don't touch 2018-12-22 01:23:40 +01:00