howardwu
3c4b8e9f68
Update gadgets traits
2021-03-04 10:38:28 -08:00
howardwu
400e3dd440
Update r1cs traits
2021-03-04 10:36:54 -08:00
howardwu
bfdf3c4dca
Update field trait
2021-03-04 10:36:29 -08:00
howardwu
4f50b44a63
itemize imports
2021-03-04 10:33:51 -08:00
howardwu
c9f70800fd
Update .tomls to 0.2.0
2021-03-04 10:33:21 -08:00
Protryon
d400764e00
parser rewrite
2021-03-03 09:59:24 -08:00
howardwu
2bfb64f83e
Update synthesizer to support new terminology
2021-02-27 13:21:29 -08:00
howardwu
8a05594b42
Bump snarkvm to v0.0.6
2021-02-27 13:10:39 -08:00
howardwu
77a0af18fe
chore(leo): bump version for new release
2021-02-26 19:42:35 -08:00
François Garillot
0d7c6d0b65
Simplifies a number of pattern-matches
...
Into the direct `Result` / `Option` combinator they correspond to, for concision / clarity.
Reviewed from automated suggestions generated from [comby-rust](https://github.com/huitseeker/comby-rust ).
2021-02-26 13:03:04 -08:00
gluax
6e38cc3b31
merge master for uid deprecation
2021-02-25 13:25:38 -05:00
gluax
3e20a9a177
Merge branch 'master' into feature/485-defines
2021-02-25 13:06:40 -05:00
collin
356b7ba062
merge master
2021-02-25 09:51:12 -08:00
damirka
efd193f187
Merge branch 'master' into console-assert-error
2021-02-25 20:24:43 +03:00
howardwu
be398437c6
Updates snarkVM to 0.0.5, updates rand usage
2021-02-25 08:56:20 -08:00
gluax
88bdc45eb1
merge master
2021-02-25 11:56:14 -05:00
gluax
38f5417571
last bit of clean up
2021-02-25 11:48:13 -05:00
Protryon
ed8d2fb11d
remove uuid dependency
2021-02-25 07:40:47 -08:00
howardwu
2e00ff451e
Rename all instances of 'ctx' to 'context'
2021-02-24 18:13:36 -08:00
gluax
e970194ed3
tuple const fixes, compiler tests
2021-02-24 11:48:00 -05:00
damirka
6448dac047
Fixes #580
...
- changes error message for console.assert inside main()
- small rewrite of setup command
- adds some autoformatting
2021-02-24 19:17:44 +03:00
dependabot-preview[bot]
f38cce71b3
Bump bincode from 1.3.1 to 1.3.2
...
Bumps [bincode](https://github.com/servo/bincode ) from 1.3.1 to 1.3.2.
- [Release notes](https://github.com/servo/bincode/releases )
- [Commits](https://github.com/servo/bincode/commits )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2021-02-24 10:47:15 +00:00
gluax
f7314625ff
basic use case works, need to clean up, and test more advanced use cases
2021-02-23 14:38:50 -05:00
bors[bot]
211fcb0195
Merge #678
...
678: Bug 662 Fix r=collinc97 a=gluax
Allows -field values in input values, resolves #662 . Also add tests for that and group - input values. Cleans up the re-written code used in a few places by adding a pub crate function. Depends on #626 .
Co-authored-by: gluax <jonathan.t.pavlik@gmail.com>
Co-authored-by: gluax <16431709+gluax@users.noreply.github.com>
2021-02-19 22:10:36 +00:00
gluax
c5641a5507
Update compiler/src/value/field/input.rs
...
Co-authored-by: Collin Chin <collin.chin@berkeley.edu>
2021-02-19 13:25:11 -05:00
gluax
ad6f3fcf84
allow -field values in input values, clean up repeated code
2021-02-18 14:36:38 -05:00
bors[bot]
c62af038c5
Merge #672 #673
...
672: Feature/515 eliminate const vars r=collinc97 a=gluax
Resolves #515 . Removes const keyword from statements. Also resolves #514 . Still allows const y in function declaration of args.
673: feature/671-primefield-refactor r=collinc97 a=gluax
Resolves #671 . Refactor "Field + PrimeField" -> "PrimeField" and all tests still pass.
Co-authored-by: gluaxspeed <jonathan.t.pavlik@gmail.com>
Co-authored-by: gluax <jonathan.t.pavlik@gmail.com>
Co-authored-by: Collin Chin <collin.chin@berkeley.edu>
2021-02-18 18:46:46 +00:00
gluax
a7b28fbf0a
resolve all the merge conflicts
2021-02-18 11:39:35 -05:00
Collin Chin
9baa9388a0
Merge branch 'master' into feature/515-eliminate-const-vars
2021-02-17 22:06:12 -08:00
bors[bot]
6715f91690
Merge #670
...
670: feature_626/negative-group-contstraints r=collinc97 a=gluax
Resolves #626 . Allows a negative group outside of a pair as well as negative numbers inside a pair group. Waiting to see if the later was necessary in the feature discussion, but I assume it would be.
Co-authored-by: gluax <jonathan.t.pavlik@gmail.com>
2021-02-17 20:50:30 +00:00
bors[bot]
54a9691b73
Merge #652 #663
...
652: ASG refactor r=collinc97 a=Protryon
## Motivation
This PR makes the ASG more user friendly by using arenas instead of RefCell/Arc:
1. Impossible to leak the ASG by creating a circular strong reference chain
2. We don't need RefCell's everywhere to implement passes
663: Bug 625/fix negative fields not allowed r=collinc97 a=gluax
Resolves #625 . Logic used to do so is in check if first character of string to convert is a negative sign. If so remove first character convert from string to field, and then negate it on the leo side. If first character wasn't a negative sign, do the same as before.
Co-authored-by: Protryon <max.bruce12@gmail.com>
Co-authored-by: gluax <jonathan.t.pavlik@gmail.com>
Co-authored-by: gluax <16431709+gluax@users.noreply.github.com>
2021-02-17 20:10:30 +00:00
Protryon
29711ff041
clippy
2021-02-16 13:33:22 -08:00
Protryon
bf61820115
asg refactor
2021-02-16 13:32:34 -08:00
gluax
7e7db4d93b
remove comment
...
Co-authored-by: Collin Chin <collin.chin@berkeley.edu>
2021-02-16 15:12:20 -05:00
gluax
6cdefa7128
remove comment
...
Co-authored-by: Collin Chin <collin.chin@berkeley.edu>
2021-02-16 15:12:07 -05:00
gluax
ba3ca6069a
refactor Field + PrimeField -> PrimeField, all tests still pass
2021-02-16 14:41:59 -05:00
gluax
d549fda7b5
rebase and replace const keyword in tests
2021-02-16 14:19:20 -05:00
gluax
8150869c6c
negative groups, and negative group coords allowed
2021-02-16 12:00:08 -05:00
gluax
5bbaf9d999
add non negated field to test, merge master
2021-02-16 09:22:10 -05:00
bors[bot]
a7c9caf4b3
Merge #653
...
653: Fix return type error for input-dependent branches r=collinc97 a=Protryon
This PR fixes failure to handle input-dependent branches. No tests added here since base case is covered, and this only occurs with production constraints. Should fix #535 .
There is an additional issue not solved by this PR on branching on booleans from input.
Co-authored-by: Protryon <max.bruce12@gmail.com>
2021-02-12 23:36:59 +00:00
gluax
eda78dd968
clippy fix
2021-02-12 15:22:59 -05:00
gluax
500a3e76d2
fix negative fields, add test for them
2021-02-12 15:20:58 -05:00
Collin Chin
6ac356819c
Merge pull request #656 from AleoHQ/dependency/snarkvm-0.0.4
...
[Dependencies] bump snarkvm module versions to 0.0.4
2021-02-11 19:50:48 -08:00
collin
537ea39513
bump snarkvm module versions to 0.0.4
2021-02-11 17:33:53 -08:00
bors[bot]
fa53e75f51
Merge #641
...
641: Bug/564 input array len not enforced r=collinc97 a=gluax
Resolves #564 , depends on #563 . The changes for this branch have pulled from PR #638 , which is the PR that fixes #563 .
Co-authored-by: gluaxspeed <jonathan.t.pavlik@gmail.com>
2021-02-11 21:41:53 +00:00
bors[bot]
d418b5330c
Merge #638
...
638: bug/563-array-input-wrong-dimensions r=collinc97 a=gluax
Closes #563 . Fixes the array dimension builder when coming from the input file. Adds a test for it as well.
Co-authored-by: gluaxspeed <jonathan.t.pavlik@gmail.com>
2021-02-11 21:22:50 +00:00
Protryon
0bd324bcb4
fix return type error for input-dependent branches
2021-02-11 08:52:22 -08:00
gluaxspeed
9a015e1e5f
console assert tests
2021-02-11 10:46:54 -05:00
gluaxspeed
cedcc6e1d1
console assert tests
2021-02-11 10:46:20 -05:00
Collin Chin
20a046bbbb
Merge pull request #643 from AleoHQ/feat/readme_license
...
Adds READMEs and LICENSEs to each Leo workspace member
2021-02-11 00:58:22 -08:00
bors[bot]
a3f0f9d587
Merge #633 #634
...
633: duplicate name context test r=collinc97 a=gluax
Adding a test for duplicate name context that was resolved in #546 .
634: fn call array params r=collinc97 a=gluax
Adding a test for bug #522 , which was resolved by the asg.
Closes #522
Co-authored-by: gluaxspeed <jonathan.t.pavlik@gmail.com>
2021-02-11 07:53:26 +00:00
bors[bot]
b72b5ac125
Merge #620
...
620: Feature/254 strengthen import rules r=collinc97 a=gluax
Grammar changes are a bit different than what was suggested in the original feature request #254 . However, it should be logically equivalent and I think makes more sense on the rust side.
Closes #254
Co-authored-by: gluaxspeed <jonathan.t.pavlik@gmail.com>
2021-02-11 07:31:56 +00:00
howardwu
777a67fb40
Adds README.md
2021-02-10 22:27:37 -08:00
howardwu
55db999a9e
Adds LICENSE.md
2021-02-10 22:23:45 -08:00
gluaxspeed
9812c76e1f
fix test needed to expect it to fail
2021-02-10 12:49:18 -05:00
gluaxspeed
42fb5ea635
merge from pr 638
2021-02-10 11:59:42 -05:00
gluaxspeed
202f056531
fix pushed but depends on pr #638
2021-02-10 11:57:10 -05:00
gluaxspeed
e48b971789
reverse iter for building array, add test case for it
2021-02-09 10:26:16 -05:00
gluaxspeed
2f6cc6c995
add test for the fixed bug
2021-02-08 15:42:37 -05:00
gluaxspeed
9651af3089
add test for the fixed bug
2021-02-08 13:44:30 -05:00
howardwu
1898cc6840
chore(leo): bump version for new release
2021-02-07 08:14:56 -08:00
gluaxspeed
f7add0fc98
re-ignore import test-many in compiler, it breaks pipeline
2021-02-05 15:33:48 -05:00
gluaxspeed
26f9973e14
resolve merge conflict, asg + grammar tests
2021-02-05 14:20:48 -05:00
gluaxspeed
59acb1a022
unignore test and add test case to thoroughly test
2021-02-05 11:36:21 -05:00
Collin Chin
770f660f3a
Merge pull request #617 from AleoHQ/const-args
...
[Feature] Const Function Arguments
2021-02-04 23:05:51 -08:00
Collin Chin
2bb10c2e8b
Merge pull request #621 from AleoHQ/dependency/snarkvm-0.0.3
...
[Dependencies] Bump snarkvm module versions
2021-02-04 22:57:36 -08:00
Collin Chin
a239e17bb6
Merge pull request #622 from AleoHQ/refactor/compiler
...
Adds ASG struct, updates ASG to support debug
2021-02-04 22:52:40 -08:00
howardwu
2a4052975f
Fix clippy
2021-02-04 20:34:24 -08:00
howardwu
749e70b5b0
Fix clippy
2021-02-04 20:32:59 -08:00
howardwu
1b99c42470
Adds ASG struct, updates ASG to support debug
2021-02-04 19:21:17 -08:00
howardwu
f80c3d236a
Renames InnerProgram to InternalProgram
2021-02-04 17:31:44 -08:00
howardwu
fb7a9f4a18
Simplify compiler calls
2021-02-04 17:26:29 -08:00
Howard Wu
fd5ce2f393
Merge pull request #585 from AleoHQ/feature/228-implied-circuit-name
...
[Feature] 228 implied circuit name
2021-02-04 14:28:14 -08:00
collin
f5be2e037f
add inline circuit integration tests
2021-02-04 13:18:28 -08:00
collin
c706ef65b8
bump snarkvm module versions
2021-02-04 13:00:30 -08:00
Protryon
5d4fbdbbe2
unignore swap test
2021-02-04 07:36:41 -08:00
Protryon
9c6eb23a1e
const func arguments
2021-02-04 07:35:12 -08:00
howardwu
90fc6a9c12
chore(leo): bump version for new release
2021-02-03 13:34:03 -08:00
howardwu
0d907bbb26
chore(leo): bump version for new release
2021-02-03 12:36:17 -08:00
Howard Wu
59aa8ac21c
Merge pull request #603 from AleoHQ/asg-return-check
...
Remove compiler return check
2021-02-03 11:28:35 -08:00
Protryon
fcbb5e4fd9
remove compiler return check
2021-02-02 19:33:41 -08:00
Protryon
abee76680b
add test
2021-02-02 18:42:00 -08:00
Protryon
b078c6e09f
remove mutable constrainedvalue
2021-02-02 18:37:27 -08:00
Protryon
e028255513
update license headers
2021-02-02 11:31:54 -08:00
Protryon
c417f2f082
fix build
2021-02-02 11:11:43 -08:00
collin
90ee77cad5
mirror swap test in asg
2021-02-02 11:09:36 -08:00
Protryon
ca549258b8
blake2s unwrap muts
2021-02-02 11:08:57 -08:00
Protryon
da52984385
output bytes update
2021-02-02 11:08:57 -08:00
Protryon
80d5c87b8a
asg
2021-02-02 11:08:56 -08:00
howardwu
cbd45e56d7
Resolves unknown clippy flags
2021-02-01 20:39:01 -08:00
howardwu
c935d6a486
Update license to 2021
2021-02-01 20:26:56 -08:00
gluaxspeed
2bda443d9c
added more tests
2021-01-27 12:10:34 -05:00
collin
d7cced6e53
rustup update && cargo clippy
2021-01-26 14:55:15 -05:00
gluaxspeed
29ff3c90b6
error and error message for deprecated test syntax, fmt, clean up
2021-01-25 15:12:10 -05:00
collin
fe78b2ec11
deprecate old test function syntax
2021-01-21 16:50:15 -05:00
Protryon
3c063d725f
rename conditional expr to ternary
2021-01-14 05:27:31 -08:00
howardwu
1a36a262b8
chore(leo): bump version for new release
2021-01-12 17:03:16 -04:00
Howard Wu
d3fcd19506
Merge pull request #536 from AleoHQ/fix/return-type-check
...
Fix/return type check
2021-01-12 16:42:13 -04:00
collin
f3452b9706
test program output array registers
2021-01-11 21:48:57 -05:00
collin
9215d911e6
use eq_flat type comparison method
2021-01-11 21:40:02 -05:00
Collin Chin
5f80cc4642
Merge pull request #532 from huitseeker/no-panic
...
Removes a panic
2021-01-11 20:52:59 -05:00
collin
758cf88de7
fix warnings
2021-01-08 20:08:14 -05:00
collin
c48c39caaf
check output register type == return value type + tests
2021-01-08 20:06:23 -05:00
François Garillot
d41c1b7138
Removes a panic
...
One panic can be folded in the error case of its enclosing `Result`, an `unwrap` call can be elided through pattern-matching reformulation.
2021-01-08 07:12:23 -08:00
Howard Wu
2cde6d0659
Merge pull request #520 from AleoHQ/fix/conditional-logging
...
fix conditional logging bug #407
2021-01-07 20:30:48 -04:00
collin
fea8bb6d1e
Merge branch 'master' of github.com:AleoHQ/leo into ast-cleanup
2021-01-05 13:09:41 -05:00
collin
d28e161706
fix conditional logging bug #407
2021-01-04 11:34:38 -05:00
howardwu
87ccc0fe3d
Update snarkVM deps to crates
2021-01-03 22:37:06 -04:00
howardwu
d5cb59c206
Update ci.yml
2021-01-02 19:18:38 -04:00
howardwu
c20822e828
Update revision
2021-01-02 18:17:26 -04:00
howardwu
11fc60c9e0
Update revision
2020-12-30 18:07:20 -04:00
howardwu
f4ad1ffff4
Add revision for snarkvm
2020-12-30 12:54:48 -04:00
howardwu
2d64515763
Migrate to snarkVM
2020-12-30 12:40:45 -04:00
howardwu
141ee7eb0f
Resolve merge conflicts
2020-12-30 11:37:51 -04:00
howardwu
1d9215a1ac
Migrates to hot 1.1.4 and adds memory usage improvements for programs
2020-12-30 11:32:10 -04:00
Protryon
91cac5f9d0
remove custom eq/hash implementations, add node implementations, remove range_or_expression
2020-12-21 05:58:10 -08:00
howardwu
1e79277728
Remove tracing-subscriber dep from compiler
2020-12-20 10:20:13 -04:00
Protryon
833eeb7fc5
fix mutable match error
2020-12-16 15:01:15 -08:00
Protryon
6bb3437280
remove unused assign code
2020-12-16 15:01:14 -08:00
Protryon
d1276bd95d
statement breakout
2020-12-16 15:00:45 -08:00
collin
6e2dcdd1b0
fix serialization
2020-12-16 14:21:57 -05:00
collin
1dbd72c453
Merge branch 'master' of github.com:AleoHQ/leo into expression-breakout
2020-12-16 13:46:43 -05:00
dependabot-preview[bot]
8894f10de7
Bump indexmap from 1.6.0 to 1.6.1
...
Bumps [indexmap](https://github.com/bluss/indexmap ) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/bluss/indexmap/releases )
- [Commits](https://github.com/bluss/indexmap/compare/1.6.0...1.6.1 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-12-15 10:44:12 +00:00
howardwu
9038c5a17a
chore(leo): bump version for new release
2020-12-14 13:57:01 -04:00
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
Howard Wu
32dad40521
Merge pull request #492 from AleoHQ/fix/array-spread-type
...
Fix array spread type bug
2020-12-11 17:32:44 -04:00
collin
ca36d06022
undeprecate parse_program_from_string and add test
2020-12-11 13:31:13 -05:00
collin
8ace306e2c
fix cargo lock
2020-12-11 12:22:07 -05:00
collin
161fe2608c
fix accessing self variable inside nested scope bug
2020-12-10 18:02:25 -05:00
collin
08e90f5c59
fix array spread type bug
2020-12-10 17:54:19 -05:00
collin
e2406bec86
fix lower array slice bug
2020-12-09 17:42:15 -05:00
collin
40c816f921
update swap test
2020-12-09 17:08:22 -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
Collin Chin
8541eb3fb8
Update mod.rs
2020-12-08 12:21:18 -05:00
Collin Chin
ac68e8e6a4
Merge branch 'master' into fix/prefer-include-str
2020-12-08 11:37:30 -05:00
collin
b7e5cd13df
fix failing test
2020-12-08 10:47:07 -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
c351c300a2
merge master
2020-12-07 20:05:15 -05: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
2352ebaf2c
rename all bytes variables to string
2020-12-04 15:48:43 -05:00
collin
674caf5902
use include_str in all program tests
2020-12-04 15:34:51 -05:00
collin
7976c739e9
use include_str in program input + state tests
2020-12-04 15:20:59 -05:00
collin
675937ba13
use include_str in program input tests
2020-12-04 12:57:08 -05:00
collin
b2246f1151
use include_str in program state tests
2020-12-04 12:51:39 -05:00
howardwu
dbae691e49
chore(leo): bump version for new release
2020-12-03 16:16:42 -04:00
collin
87c0dd738a
add test for bug #427 incomplete conditional
2020-12-03 13:44:47 -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
4cb07d5cd3
add test for nested mutable value
2020-12-02 12:31:51 -05:00
collin
1217e9860e
fix nested mutable value bug
2020-12-02 12:29:32 -05:00
howardwu
74f7f24b19
chore(leo): bump version for new release
2020-12-01 22:57:11 -04: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
1213209b78
cargo fmt check
2020-11-23 17:01:01 -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
Howard Wu
25c9ac6ea2
Merge pull request #446 from AleoHQ/fix/input-tuple
...
fix input tuple grammar rule
2020-11-23 13:46:01 -08:00
collin
efe734afaf
add input, self, mut self keyword functionality to ast module
2020-11-23 14:49:20 -05:00
collin
093bab6b02
add test for returning a tuple in a conditional statement
2020-11-18 18:28:41 -08:00
collin
5db2b07cb2
add test for using not operator on mutable variable
2020-11-18 18:23:11 -08:00
collin
789a744deb
add test for returning tuples from function
2020-11-18 18:13:49 -08: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
05a83950e5
bump versions fix conflicts
2020-11-11 12:04:48 -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
howardwu
0d966d1d5c
chore(leo): bump version for new release
2020-11-06 19:56:12 -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 Chin
1a39ae93ca
Use matches macro
2020-10-27 10:06:50 -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
d3125a0f9f
add new dynamic check errors and tests for variables
2020-10-26 18:41:51 -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
b3c140d5bb
fix array function input bug
2020-10-26 13:14:36 -07:00
collin
9bae1037f7
fix core package tests
2020-10-26 12:55:00 -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
17a65fe54a
add dynamic check errors for circuits 3
2020-10-24 19:27:30 -07:00
collin
6e124e52ff
add dynamic check errors for statements
2020-10-24 17:01:40 -07:00
collin
22d6c98c77
add dynamic check errors for functions
2020-10-24 16:50:07 -07:00
collin
e19616b4e5
add dynamic check errors for circuits 2
2020-10-24 13:07:27 -07:00
collin
973e2a6afc
add dynamic check errors for circuits 1
2020-10-24 02:53:09 -07:00
collin
8e75e36532
manually impl PartialEq for array types
2020-10-23 21:54:19 -07:00
collin
f2a808cbe7
impl membership type assertion error handling
2020-10-23 17:31:41 -07:00
collin
dbade1f4fe
fix mismatched types test
2020-10-23 17:00:11 -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
4591a0eb04
refactor: use &Path instead of (&)PathBuf in tests
2020-10-16 17:23:22 +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
collin
323992696c
use typed assignee access
2020-10-15 18:11:39 -07:00
ljedrz
970f808290
perf: refactor a lot of the compiler so that Spans and Strings are rarely cloned
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-15 18:19:34 +02:00
ljedrz
e1e22a2310
perf: vector pre-allocation and associated tweaks
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-08 11:47:03 +02:00
collin
effdfc7628
add leo dynamic check module
2020-10-06 17:20:51 -07:00
ljedrz
98baae93c1
clippy: assorted fixes to tests and benches
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 15:09:03 +02:00
ljedrz
300666827e
fmt: run cargo +nightly fmt on the changes
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 13:07:30 +02:00
ljedrz
c09b7eb3b1
clippy: fix if_same_then_else
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
fe016dc168
clippy: fix needless_range_loop
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
08afb0e604
clippy: fix redundant_pattern_matching
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
4d8a91418f
clippy: fix unnecessary_unwrap
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
fc4e2ee4ab
clippy: fix type_complexity
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
8c099ab8c8
clippy: fix into_iter_on_ref
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
1a3d1fb2b8
clippy: fix collapsible_if
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
b4bb39872b
clippy: fix unused_unit
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
bdfb6f5fb5
clippy: fix redundant_closure
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
e9b9c1f72f
fix: allow a piece of own deprecated code
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
f016b972fb
clippy: fix vec_box
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
ba9fc92229
clippy: fix large_enum_variant
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
c4cdaed923
clippy: allow too_many_arguments
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
1fc9b902dd
clippy: fix redundant_clone & clone_on_copy
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
93369aed33
clippy: fix ptr_arg
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
98990721cf
clippy: fix redundant_static_lifetimes
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
a872db5ca6
clippy: fix useless_conversion
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
a4891c6f00
clippy: fix len_zero
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
7c15eabd5e
clippy: fix or_fun_call
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
ffef5089f7
clippy: fix new_without_default
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
80bb3033fd
clippy: fix single_char_pattern
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:50:43 +02:00
ljedrz
c21b5ad2f3
clippy: fix useless_format
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-06 12:12:35 +02:00
ljedrz
4f46dd2982
clippy: allow module_inception
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-05 17:18:25 +02:00
ljedrz
0cf7a247cc
clippy: fix needless_return
...
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-05 17:16:44 +02:00
collin
d5a9cefe7c
impl symbol table for pass 1 + pass 2 type resolution
2020-10-01 20:17:47 -07:00
collin
9ee5b58cff
Merge branch 'fix/blake2s-test-output-formatting' of github.com:AleoHQ/leo into feature/import-parser
2020-09-18 13:04:10 -07:00
collin
a76f4f6767
fix test
2020-09-18 12:57:44 -07:00
Collin Chin
13dc121091
Merge pull request #368 from AleoHQ/fix/array-return-type
...
Fix/array return type
2020-09-18 12:47:04 -07:00
Collin Chin
249242266c
Merge pull request #365 from AleoHQ/feature/blake2s
...
Implement core module with native blake2s circuit
2020-09-18 12:46:31 -07:00
collin
3164f6ce33
fix import tests
2020-09-18 12:41:38 -07:00
collin
557fccd9da
remove old import parser code from compiler
2020-09-18 12:35:27 -07:00
collin
d54749145b
use import parser errors in compiler
2020-09-18 12:26:51 -07:00
collin
22422c1b55
create separate module for imports
2020-09-18 12:04:10 -07:00
Collin Chin
7dfbff7795
Merge pull request #351 from AleoHQ/feature/log-numbers
...
remove types from console.log and formatted strings
2020-09-18 11:30:12 -07:00
collin
6250e95277
impl compare nested array types method for function return type
2020-09-17 12:46:55 -07:00
collin
733561cc93
remove unused test dependencies
2020-09-16 13:45:53 -07:00
collin
38d7397c2c
add unit and integration tests for core unstable blake2s circuit
2020-09-16 13:41:50 -07:00
collin
facafe6041
add core package parsing errors
2020-09-16 00:05:58 -07:00
collin
2a9d69f07f
add core circuit errors
2020-09-15 23:35:30 -07:00
collin
32c85720be
make core function arguments and returns generic
2020-09-15 21:18:48 -07:00
collin
3d3a093f2a
Merge branch 'master' of github.com:AleoHQ/leo into feature/blake2s
2020-09-15 17:27:55 -07:00
collin
b071b85b8c
remove print statements
2020-09-15 14:19:15 -07:00
collin
23bdecf6c4
fix nested return type mismatch error
2020-09-15 13:01:10 -07:00
collin
5341c28805
naive call to blake2s function working
2020-09-15 12:33:28 -07:00
collin
32cf945c61
core package imports wip
2020-09-12 23:10:01 -07:00
collin
9ed64a6627
fix conflicts
2020-09-10 16:44:25 -07:00
collin
d2810f2789
fix tests
2020-09-10 11:18:49 -07:00
collin
8a3f59e9c0
remove types from console.log and formatted strings
2020-09-07 23:40:15 -07:00
collin
5db13fa904
test Self keyword fails in main function
2020-09-07 22:07:26 -07:00
collin
e916a53ed9
add error and clean up
2020-09-07 22:04:23 -07:00
collin
5e4877e778
fix static call nested and test
2020-09-07 21:56:39 -07:00
collin
a83795eda3
fix define circuit inside circuit function bug
2020-09-07 21:15:30 -07:00
collin
09e209f5eb
fix storing self circuit variables inside circuit function bug
2020-09-07 15:06:52 -07:00
collin
17784ffb23
add tests for mutable circuit variables using self keyword
2020-09-07 13:47:50 -07:00
collin
a04160a09e
impl mutating a circuit using the self keyword inside a circuit function
2020-09-07 13:27:49 -07:00
collin
59570002f2
mutable self wip
2020-09-05 22:03:02 -07:00
collin
2d7886f951
add test comments
2020-09-03 13:58:04 -07:00
collin
3ef023b87a
impl tests for nested and tuple array combinations in Leo programs
2020-09-03 13:56:45 -07:00
collin
4932eb688e
support all combinations of nested and tuple array syntax. Test small and large arrays
2020-09-03 13:22:05 -07:00
collin
b6dc77e112
support nested array type in leo inputs
2020-09-03 11:24:23 -07:00
collin
de3564b98d
support nested array type in leo programs
2020-09-03 10:02:59 -07:00
howardwu
2620ae7bc2
chore(leo): bump version for new release
2020-09-03 03:08:33 -07:00
Howard Wu
788300ef93
Merge pull request #343 from AleoHQ/fix/input-error-messages
...
Add file path to all error messages
2020-09-03 02:50:13 -07:00
howardwu
981d272fa6
Fixes array indices for both nested and tuple cases
2020-09-03 02:40:50 -07:00
howardwu
40ac13e317
Fix critical array indexing bug
2020-09-03 00:30:57 -07:00
collin
60db15596d
fix parser syntax errors. fix tests
2020-09-02 23:23:50 -07:00
collin
340e633470
fix state file errors
2020-09-02 23:05:03 -07:00
collin
0bb8c42731
fix input file errors
2020-09-02 22:59:54 -07:00
Howard Wu
ad53cdc9ba
Merge pull request #341 from AleoHQ/refactor/keywords
...
Refactor/keywords
2020-09-02 21:54:59 -07:00
Howard Wu
179fba27fc
Merge pull request #337 from AleoHQ/fix/missing-license
...
add missing license headers
2020-09-02 21:53:14 -07:00
collin
603438b216
impl self keyword protected name and add tests
2020-09-02 20:59:05 -07:00
collin
42b03a3ccb
impl input keyword protected name
2020-09-02 20:24:21 -07:00
collin
94f6c00f30
add data types to protected names. add identifier tests
2020-09-02 19:23:16 -07:00
collin
ddb40a3b15
add missing license headers
2020-09-02 18:45:48 -07:00
collin
c84227f69a
Merge branch 'master' of github.com:AleoHQ/leo into feature/mutable-circuit-variables
2020-09-02 18:04:00 -07:00
collin
d35188abcb
test mutable circuit variables
2020-09-02 18:01:47 -07:00
collin
87781fed03
throw an error when assigning to an immutable circuit variable
2020-09-02 17:52:17 -07:00
Collin Chin
6fc3393f5c
Merge pull request #334 from AleoHQ/feature/array-init-parenthesis
...
Feature/array init parenthesis
2020-09-02 20:36:13 -04:00
Collin Chin
7bc803bd32
Merge pull request #333 from AleoHQ/feature/rename-circuit-field
...
Feature/rename circuit field
2020-09-02 20:36:01 -04:00
collin
df9fb58677
impl mutable circuit variables
2020-09-02 17:31:31 -07:00
collin
51b80d1742
Merge branch 'feature/rename-circuit-field' into feature/mutable-circuit-variables
2020-09-02 16:59:30 -07:00
collin
84a874b0ce
add tests for large array initializer
2020-09-02 16:49:06 -07:00