Commit Graph

605 Commits

Author SHA1 Message Date
howardwu
babb8ec175 Hotfix cargo fmt 2020-12-14 13:54:46 -04:00
Howard Wu
235f85e039
Merge pull request #494 from AleoHQ/refactor/parse-program-from-string
Undeprecate parse_program_from_string
2020-12-11 17:35:10 -04:00
Howard Wu
878f0a8461
Merge pull request #493 from AleoHQ/fix/self-access-scope
fix accessing self variable inside nested scope bug
2020-12-11 17:33:32 -04:00
collin
ca36d06022 undeprecate parse_program_from_string and add test 2020-12-11 13:31:13 -05:00
collin
161fe2608c fix accessing self variable inside nested scope bug 2020-12-10 18:02:25 -05:00
collin
6e67ea485a Merge branch 'master' of github.com:AleoHQ/leo into fix/nested-mut-assignee 2020-12-09 17:06:49 -05:00
collin
00dac3709a Merge branch 'master' of github.com:AleoHQ/leo into fix/prefer-index-map 2020-12-08 16:07:49 -05:00
collin
8a44eff4a5 fix nested mutable assignee bug, add swap test 2020-12-08 16:00:12 -05:00
Protryon
5c1a522f89 remove debug prints 2020-12-07 17:05:45 -08:00
Protryon
f9dc75f70c expression breakout 2020-12-07 17:05:44 -08:00
collin
e93100eb6a merge master 2020-12-07 19:55:03 -05:00
Howard Wu
f841f2e348
Merge pull request #466 from AleoHQ/fix/nested-mut-value
Fixes assignment of mutable variable to mutable variable
2020-12-07 20:41:58 -04:00
collin
4cac0aeb41 merge master, update serialization test 2020-12-07 16:40:34 -05:00
Protryon
b9fb1123de block ast node 2020-12-07 13:28:03 -08:00
collin
1dbdf23d5a use index map in compiler module 2020-12-07 12:18:20 -05:00
collin
3b23eb595a return iterator instead of vector 2020-12-07 11:22:45 -05:00
collin
7745710dc4 cargo +nightly clippy 2020-12-04 19:06:29 -05:00
collin
cd53cba77a fix circuit selftype error bug 2020-12-04 17:56:59 -05:00
collin
0f91630a9f merge function input self changes 2020-12-04 16:52:19 -05:00
collin
f1bd5399a1 cargo clippy 2020-12-04 16:47:03 -05:00
collin
0698f5df59 Merge branch 'master' of github.com:AleoHQ/leo into feature/circuit-self-input 2020-12-04 16:41:31 -05:00
collin
dfcc77a860 add test for bug #430 early returns 2020-12-03 13:38:05 -05:00
collin
b94c70588e refactor execution of branch indicators and function returns 2020-12-03 13:24:23 -05:00
collin
1217e9860e fix nested mutable value bug 2020-12-02 12:29:32 -05:00
collin
7ce927ff78 remove unused branch 2020-12-01 15:43:35 -05:00
collin
d8c08fedd7 fix tests 2020-12-01 15:37:44 -05:00
collin
8457b05354 remove mut circuit variable definition 2020-12-01 11:54:51 -05:00
collin
7977b20ad2 remove mut variable keyword 2020-12-01 10:19:02 -05:00
collin
82e13edbbe pass mutable reference to circuit variable when 'mut self' keyword is present 2020-12-01 10:12:50 -05:00
collin
74f7749462 pass circuit members into function by value when self keyword is present 2020-11-30 17:54:41 -05:00
collin
04081beb4b move function input length check to type checking phase 2020-11-30 13:34:21 -05:00
collin
d4d5f336c4 refactor compiler to use new ast 2020-11-30 13:06:11 -05:00
Collin Chin
26151f33ec
Merge branch 'master' into fix/tuple-cond-select 2020-11-23 16:57:22 -05:00
Howard Wu
1d1e86c8de
Merge pull request #447 from AleoHQ/fix/not-expression
fix error using not operator on mutable boolean
2020-11-23 13:49:35 -08:00
collin
efe734afaf add input, self, mut self keyword functionality to ast module 2020-11-23 14:49:20 -05:00
collin
db056b9383 Merge branch 'master' of github.com:AleoHQ/leo into feature/type-inference 2020-11-16 18:08:14 -08:00
collin
c27a166dfb fix error when selecting return between two tuples 2020-11-16 16:06:28 -08:00
collin
2ed5e02de3 fix error using not operator on mutable boolean 2020-11-16 15:50:10 -08:00
Collin Chin
a570a2a13e
Merge pull request #432 from AleoHQ/fix/leo-ast-naming
Rename leo ast -> ast
2020-11-13 11:44:46 -08:00
collin
d3ab32822e remove unnecessary program clone 2020-11-12 15:43:37 -08:00
collin
8c2823410a rename leo ast -> ast 2020-11-12 12:00:27 -08:00
collin
69a8b61efe add type-inference module 2020-11-12 10:28:24 -08:00
collin
667392237f add symbol-table module 2020-11-11 14:57:39 -08:00
collin
d4b6a6d1f8 separate symbol-table module 2020-11-11 14:42:57 -08:00
collin
eb301d310b separate type-inference module 2020-11-11 14:32:46 -08:00
collin
f28eb8c20a clippy lints 2 2020-11-10 16:34:44 -08:00
collin
33fae17b35 clippy lints 1 2020-11-10 16:23:55 -08:00
collin
04f4e685ed array type refactor finished. all tests pass 2020-11-10 13:22:18 -08:00
collin
d6686005a3 fix refactored array initializer tests wip 3 2020-11-09 19:26:34 -08:00
collin
34b425ffe5 fix refactored array initializer tests wip 2 2020-11-09 15:03:12 -08:00
collin
aa17355a72 fix refactored array initializer tests wip 1 2020-11-09 14:27:59 -08:00
collin
1ae66d9908 add support for refactored array initializer in compiler 2020-11-06 19:42:07 -08:00
collin
d7ff808660 add support for refactored array type in compiler 2020-11-06 16:24:38 -08:00
collin
6f3a235c76 Refactor symbol table array type comparison 2020-11-02 13:28:56 -08:00
collin
2fdcb043fc Improve doc comments for compiler phases 2020-11-02 09:19:11 -08:00
collin
4da923eec4 rename core-packages -> core 2020-10-30 17:36:48 -07:00
collin
a8c5885836 rename core-ast -> ast 2020-10-30 17:31:09 -07:00
collin
ffcd93f781 rename ast -> grammar 1 2020-10-30 17:17:17 -07:00
collin
61f4189483 Add documentation for renamed modules 2020-10-30 16:23:18 -07:00
collin
5a46cb5bb0 rename leo-core -> leo-core-packages 2020-10-30 13:02:44 -07:00
collin
7589fa65c5 rename dynamic-check -> type-inference 2 2020-10-30 12:49:01 -07:00
collin
f1e393a9ab rename dynamic-check -> type-inference 1 2020-10-30 12:39:02 -07:00
collin
7e7d1e58a0 rename typed -> core-ast 2 2020-10-30 11:48:40 -07:00
collin
be2a805d49 rename typed -> core-ast 1 2020-10-30 11:30:52 -07:00
collin
7cf41558bc rename static-check -> symbol-table 3 2020-10-30 10:51:45 -07:00
collin
b5a05be09d rename static-check -> symbol-table 2 2020-10-30 10:44:44 -07:00
collin
20ac83265d rename static-check -> symbol-table 1 2020-10-30 10:25:44 -07:00
collin
46f585e2ff refactor compiler methods 2020-10-27 00:31:36 -07:00
collin
52810588ff refactor modules and make function names more clear 2020-10-26 23:42:01 -07:00
collin
fe79cfcf71 merge master 2020-10-26 22:05:03 -07:00
collin
9024fb0968 remove unused code 2020-10-26 17:52:32 -07:00
collin
020773fb2a impl dynamic checks for imports. all tests pass 2020-10-26 16:05:02 -07:00
collin
09d86576ea add import parsing to first pass of static check 2020-10-26 15:51:46 -07:00
collin
9933b8e336 impl dynamic checks for core packages 2020-10-26 12:24:24 -07:00
collin
54bf6ca42d load program input type into symbol table 2020-10-24 23:57:38 -07:00
collin
4aab804148 add type variable for implicit addresses 2020-10-23 15:52:43 -07:00
collin
f1490a994b impl dynamic check errors 2020-10-23 15:23:48 -07:00
ljedrz
4ccc9c31db perf: reduce format!-related allocations and move them to closures where possible
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 17:36:26 +02:00
ljedrz
e5f47b8254 perf: make Address is_constant method faster
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 09:36:08 +02:00
ljedrz
7443bffc00 clippy: unbox some arguments
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-21 11:16:24 +02:00
ljedrz
5e4f799685 clippy: remove a few redundant clones
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-21 11:14:27 +02:00
Collin Chin
61556cca29
Merge pull request #399 from ljedrz/boxing_improvements
Boxing improvements
2020-10-21 02:10:18 -07:00
collin
3870cf785d fix box accesses 2020-10-21 01:32:09 -07:00
collin
8ea2735caa fix string references 2020-10-21 01:15:12 -07:00
collin
c9e044d3c3 cargo fmt 2020-10-21 01:05:56 -07:00
Collin Chin
33d4da7ad5
Merge branch 'master' into alloc_hunting 2020-10-21 01:05:24 -07:00
Collin Chin
bf77207918
Merge branch 'master' into boxing_improvements 2020-10-21 01:03:38 -07:00
Collin Chin
3c0409da16
Merge branch 'master' into boxing_improvements 2020-10-21 00:51:49 -07:00
Collin Chin
e06e9b9ce6
Merge branch 'master' into alloc_hunting 2020-10-21 00:51:22 -07:00
collin
7c9a5ad8aa fix reference error 2020-10-21 00:19:30 -07:00
Collin Chin
d2dcf65b68
Merge branch 'master' into type_tweaks 2020-10-20 22:29:23 -07:00
collin
f30f615655 impl dynamic checker definition statements 2020-10-20 13:14:16 -07:00
ljedrz
49e9a48d90 perf: reduce boxing in typed objects
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-20 11:49:28 +02:00
ljedrz
c8299743b8 perf: reduce Expression size from 244B to 152B
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-19 16:23:36 +02:00
ljedrz
64774cdab6 refactor: accept &Path instead of PathBuf where sufficient
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 17:09:44 +02:00
ljedrz
d662b9a236 perf: use Cow to avoid some PathBuf allocations
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 16:51:58 +02:00
ljedrz
f59416be1b refactor: pass &Path instead of &PathBuf as arguments
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 16:18:46 +02:00
ljedrz
790f1c472a perf: don't allocate PathBufs for the purposes of PathBuf::push
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 15:52:45 +02:00
ljedrz
69d35063f2 perf: use .to_string() instead of single-param format!
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 15:52:45 +02:00
ljedrz
529d87bc88 perf: remove some generic unnecessary allocations
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 15:52:45 +02:00