collin
74248f936b
impl tuples for inputs
2020-08-10 22:02:03 -07:00
collin
79846ab565
support nested tuple types
2020-08-10 19:45:03 -07:00
collin
a0195c3180
add tuple tests
2020-08-10 19:40:49 -07:00
collin
0e8473658e
support tuple access and comparison
2020-08-10 19:12:38 -07:00
collin
e85d6499d0
support tuple parsing and assignment
2020-08-10 18:21:23 -07:00
collin
9c7e14cf4d
comment out integer tests
2020-08-10 14:46:36 -07:00
collin
e7851d98d0
add serialize and deserialize circuit methods
2020-08-08 19:55:17 -07:00
collin
168561f340
comment out integers
2020-08-08 02:17:20 -07:00
collin
62c5d8251b
add specific test for import definition
2020-08-07 16:59:32 -07:00
collin
13ca17634d
allow import definition at any point in a leo file
2020-08-07 16:35:55 -07:00
collin
424287eb7b
Merge branch 'master' of github.com:AleoHQ/leo into feature/unordered-definitions
2020-08-07 16:18:50 -07:00
collin
52addca70e
Merge branch 'feature/unary-minus' of github.com:AleoHQ/leo into refactor/value-number
2020-08-07 15:17:06 -07:00
collin
f32ea5b744
rename minus -> negate
2020-08-07 15:14:02 -07:00
collin
3d1edefedb
add definition parsing to typed. add tests
2020-08-05 22:45:52 -07:00
collin
8ad4724b01
merge unary pr
2020-08-05 20:06:33 -07:00
collin
1fd3e946f8
use compound atomic rules in pest, update tests
2020-08-05 18:13:50 -07:00
collin
c66efc03f0
impl negation tests for all types
2020-08-04 21:37:09 -07:00
collin
269e24595f
impl compiler support for integer, group, field negation
2020-08-04 21:04:45 -07:00
collin
6cff63d752
add unary expression, unary operator, minus, and not to pest and types
2020-08-04 20:09:48 -07:00
Collin Chin
ba23ea3832
Merge pull request #152 from AleoHQ/fix/pest-address
...
Fix/pest address
2020-08-04 19:11:41 -07:00
collin
8b674388ad
Merge branch 'master' of github.com:AleoHQ/leo into feature/array-size
2020-08-03 23:23:55 -07:00
collin
a0d294591e
enforce aleo prefix and character length
2020-08-03 23:22:11 -07:00
collin
2c3c852ff4
Merge branch 'master' of github.com:AleoHQ/leo into fix/pest-address
2020-08-03 23:12:03 -07:00
Howard Wu
1e7a6bf4ca
Merge pull request #157 from AleoHQ/fix/leo-test
...
fix leo test to run tests in isolation
2020-08-03 21:58:17 -07:00
Howard Wu
f2f28a37c4
Update compiler.rs
2020-08-03 20:45:29 -07:00
collin
ddcf2c0b09
fix leo test to run tests in isolation
2020-08-03 19:51:41 -07:00
collin
279c322f2d
fix division max value bug
2020-08-03 18:54:27 -07:00
collin
d08364b71b
check for negation overflow in division test
2020-08-03 15:38:47 -07:00
collin
95984c98c9
fix division by zero error detect
2020-08-03 15:22:29 -07:00
collin
01b2e0e760
Merge branch 'master' of github.com:AleoHQ/leo into fix/pest-address
2020-08-03 14:59:19 -07:00
collin
1f1a49a5d3
add tests for invalid integers in array size
2020-08-03 14:56:45 -07:00
collin
1e56b3a5f6
fix all examples. change outputs -> output
2020-08-03 12:46:47 -07:00
collin
e7ad1595a7
add empty address test
2020-08-03 12:01:09 -07:00
howardwu
f4f9b30dd2
Rename directory types -> typed
2020-08-02 21:02:25 -07:00
howardwu
c8b82f12a8
Rename directory leo-input -> input
2020-08-02 21:00:23 -07:00
howardwu
f40ba91784
Rename types -> typed
2020-08-02 20:56:22 -07:00
howardwu
3ccfd2c764
Adds ci_skip
2020-08-02 19:57:28 -07:00
howardwu
8410e68fb6
Resolve merge of tests
2020-08-02 19:01:15 -07:00
howardwu
5375d97b40
Resolve merge conflict
2020-08-02 18:51:44 -07:00
howardwu
2d1b93e5f8
Merge with master
2020-08-02 17:24:31 -07:00
howardwu
2caa34be67
Revert to leo-types
2020-08-02 16:59:56 -07:00
howardwu
f6dcd7f9c2
Complete migration to leo_typed
2020-08-01 16:03:56 -07:00
collin
eb9bcdbeb8
expect signed integer division overflow error
2020-07-31 21:52:52 -07:00
collin
3d35fb026b
outputs -> output
2020-07-31 21:15:33 -07:00
collin
070fa0edea
fix all tests
2020-07-31 20:59:50 -07:00
collin
fb45ac7498
rename inputs -> input
2020-07-31 19:39:30 -07:00
collin
e22e962588
rename leo-inputs -> leo-input
2020-07-31 18:49:01 -07:00
collin
ce2a92b9bf
add function input keyword. support access to registers, record, state, state_leaf
2020-07-31 18:30:08 -07:00
collin
7137c98745
adds check for integer parsing error vs integer computation error in tests
2020-07-31 14:06:01 -07:00
howardwu
1ea5f7de4a
Add leo_typed_ast program, has one serialization error
2020-07-31 00:24:21 -07:00
howardwu
0d5a15cd41
Merge branch 'master' of https://github.com/AleoHQ/leo into feature/typed_ast
2020-07-30 23:51:40 -07:00
howardwu
af37c3bc9e
Rename leo-types to leo-typed
2020-07-30 23:33:16 -07:00
collin
ae8fb1f714
merge master fix conflicts
2020-07-30 22:41:07 -07:00
howardwu
61d92ecc91
Remove revision peg for snarkOS dependency, change Leo to groth16, update to proper calling convention for snarks
2020-07-30 19:09:27 -07:00
collin
a858b37fe0
merge master fix conflicts
2020-07-30 18:30:56 -07:00
collin
02833b80e0
add .in and .state tests
2020-07-30 18:17:55 -07:00
collin
e62a2a066a
fix syntax tests
2020-07-30 17:19:10 -07:00
collin
6eb9ef41c3
fix statement tests
2020-07-30 17:11:58 -07:00
collin
f334ba646d
fix mutability tests
2020-07-30 16:37:01 -07:00
collin
d4eae685a3
fix macros tests
2020-07-30 16:27:31 -07:00
collin
63342e7b10
fix int tests
2020-07-30 16:20:31 -07:00
collin
2f983180b7
fix uint tests
2020-07-30 15:41:03 -07:00
collin
1b6a2b55d4
fix inputs tests
2020-07-30 14:38:31 -07:00
collin
4566ac8e03
fix import tests
2020-07-30 13:01:04 -07:00
collin
f03d0be080
fix group tests
2020-07-30 12:54:34 -07:00
collin
6dfc17ea46
fix function tests
2020-07-30 12:10:33 -07:00
collin
41559ba3a0
fix circuit tests
2020-07-30 11:11:54 -07:00
collin
df9b94ef73
fix array tests
2020-07-30 00:56:17 -07:00
collin
14498c4836
fix address tests
2020-07-30 00:15:14 -07:00
collin
a4448cdd12
add manual main input method for testing. fix field tests
2020-07-29 23:32:21 -07:00
collin
61f7c54858
refactor testing compiler to handle .in .out .state files. fix boolean tests
2020-07-29 20:52:37 -07:00
collin
1b99d62de8
adds compiler output file and output bytes data structures
2020-07-29 18:32:35 -07:00
collin
ac8c940169
add parsing for .in and .state files and update errors
2020-07-29 13:20:44 -07:00
howardwu
5bd6ab78b9
Refactor compiler to have a separate typed ast infrastucture
2020-07-29 01:12:17 -07:00
collin
3d3e8f5e72
compiler successfully parsing record, registers, state, state_leaf variables with access
2020-07-29 00:18:19 -07:00
howardwu
d3894ff546
Adds AST JSON generator
2020-07-28 22:26:28 -07:00
collin
d5ac5e6709
use input section macro in leo types
2020-07-28 21:22:31 -07:00
collin
82b0b576dd
parse input file before program file
2020-07-28 20:46:26 -07:00
collin
9fc9e16367
parse main, record, registers, state, state_leaf types to compiler input
2020-07-28 16:57:03 -07:00
collin
92bfad8cc3
clean up pr. remove field comparison
2020-07-17 16:14:13 -07:00
collin
7405a6284a
rename gadgets, remove unused files
2020-07-17 13:56:13 -07:00
collin
1707d43be0
fix indents
2020-07-17 12:59:18 -07:00
collin
cc33c68bea
fix field tests, use num_bigint
2020-07-17 12:44:08 -07:00
collin
1ede8db1cd
fix traits in compiler
2020-07-16 22:48:56 -07:00
collin
c3e2ba420f
rename _test to test_
2020-07-16 21:27:40 -07:00
collin
dbaa334eb6
add checked neg check in tests
2020-07-16 21:26:39 -07:00
collin
5fb77fd457
fix tests
2020-07-16 20:47:47 -07:00
collin
8f397a3382
fix field comparator
2020-07-16 20:00:28 -07:00
collin
d542a9716b
fix uint and int comparators
2020-07-16 17:27:58 -07:00
collin
078c7e8a5a
use helpers and rename errors
2020-07-15 22:44:20 -07:00
collin
fe2f29ccad
add tests for i types
2020-07-15 21:55:45 -07:00
collin
2f39ecdbc3
impl infra for i type tests
2020-07-15 21:31:23 -07:00
collin
bfda4bb95c
fix tests
2020-07-15 20:42:57 -07:00
collin
d30d72d76e
impl i8 i16 i32 i64 i128 for leo-inputs
2020-07-15 20:28:22 -07:00
collin
6f36dc6cd6
fix uint tests
2020-07-15 19:55:04 -07:00
collin
5ccda0750a
add i8 i16 i32 i64 i128 types
2020-07-15 19:32:55 -07:00
collin
eb5ab1fbe1
move comparator into leo-gadgets. impl cmp for i types
2020-07-14 18:32:54 -07:00
collin
540c0de69f
add unknown parameter test
2020-07-09 19:33:10 -07:00
collin
118b50fb58
add macro tests
2020-07-09 19:23:15 -07:00
collin
cd38e3a476
println -> print. update readme
2020-07-09 18:55:53 -07:00
collin
7ae351c0c6
evaluate println, debug, error macros
2020-07-09 05:03:10 -07:00
collin
364e7684ac
add println, debug, error to leo-types
2020-07-09 01:39:13 -07:00
collin
aa708b8084
fix value.field bug
2020-07-08 03:30:15 -07:00
collin
7a0827af48
refactor errors module
2020-07-08 03:18:30 -07:00
collin
cce056be5d
add function modules
2020-07-08 03:12:35 -07:00
collin
24df97b9a3
add assert statement module
2020-07-08 02:45:19 -07:00
collin
6d52a28161
add conditional statement module
2020-07-08 02:36:12 -07:00
collin
a7888f5b29
add assign statement module
2020-07-08 02:17:51 -07:00
collin
6d4a34d0ec
add definition statement module
2020-07-08 01:58:45 -07:00
collin
51ee4894c7
add return statment module
2020-07-08 01:48:59 -07:00
collin
6a442fc421
add implicit module. Edit expression module descriptions
2020-07-08 00:34:09 -07:00
collin
2d9386f685
add binary expression module
2020-07-08 00:13:41 -07:00
collin
c1a560f0ec
add identifier expression module
2020-07-08 00:04:05 -07:00
collin
ba239921b9
add function module
2020-07-08 00:00:12 -07:00
collin
c8a93073c1
add circuit expression module
2020-07-07 23:56:31 -07:00
collin
5d1b242eb4
add array expression module
2020-07-07 23:48:39 -07:00
collin
c989061ab1
add ternary expression module
2020-07-07 23:38:01 -07:00
collin
ada42fdcf4
make expression module methods public
2020-07-07 23:32:49 -07:00
collin
6de9e67282
add logical expression module
2020-07-07 23:15:41 -07:00
collin
d5017c7666
add relational expression module
2020-07-07 23:07:35 -07:00
collin
f29fac883f
add arithmetic expression module
2020-07-07 22:51:41 -07:00
collin
333f75ae8b
add module names
2020-07-07 21:15:23 -07:00
collin
965bdc4d6a
fix import module
2020-07-07 21:05:03 -07:00
collin
5557f08435
add program module
2020-07-07 20:13:22 -07:00
collin
edec49e5d0
add function module
2020-07-07 20:06:39 -07:00
collin
7321e90d50
create statement module
2020-07-07 20:03:56 -07:00
collin
5ca2712888
crate expression module
2020-07-07 20:01:25 -07:00
collin
9f4812a178
move address module
2020-07-07 19:58:12 -07:00
collin
b0acd5ea5a
update field and group modules
2020-07-07 19:53:37 -07:00
collin
a6092e9a2f
add field module
2020-07-07 19:40:01 -07:00
collin
d575a187db
move integer module
2020-07-07 19:32:19 -07:00
collin
933775fe95
create boolean module
2020-07-07 19:26:01 -07:00
collin
e98c344f76
move comparator
2020-07-07 19:17:23 -07:00
collin
654c623789
move boolean
2020-07-07 19:14:03 -07:00
collin
2e24197ea2
create value module
2020-07-07 19:11:26 -07:00
collin
604eb09e27
move definitions
2020-07-07 19:06:45 -07:00
collin
87db0508f4
impl return tuples and update tests
2020-07-07 10:11:23 -07:00
collin
a20d4ab22d
add one trait to group type trait
2020-07-07 02:10:39 -07:00
collin
efd885c6a7
impl 1group and add test
2020-07-07 02:08:48 -07:00
collin
4529c56fd2
add address ternary and equal functionality and tests
2020-07-06 20:25:14 -07:00
collin
2e1a1c3075
remove invalid test
2020-07-06 06:43:32 -07:00
collin
7a04fd9e0e
fix address input bug
2020-07-06 06:40:04 -07:00
collin
423e804a27
impl address inputs
2020-07-06 06:17:08 -07:00
collin
d3c0dbb80c
impl tests for address type
2020-07-06 04:59:06 -07:00
collin
96a623315e
impl address gadgets
2020-07-06 04:04:06 -07:00
collin
8ca5f5ce66
use account public key in snarkos dpc
2020-07-06 03:18:20 -07:00
collin
d5bdda89e7
add initial address type to constraints
2020-07-06 02:38:50 -07:00
collin
84f634559c
fix recursive circuit member function namespace bug
2020-07-03 22:44:09 -07:00
collin
3f10bcfe82
impl circuit member access with self.member
2020-07-03 13:35:46 -07:00
collin
36b2508de3
add circuit self keyword wip
2020-07-02 21:36:22 -07:00
collin
a78d077d40
merge refactor/const
2020-07-02 15:58:00 -07:00
collin
b7cefc5ac0
Merge branch 'feature/comparator' of github.com:AleoHQ/leo into refactor/const
2020-07-02 15:54:29 -07:00
collin
cf4a8772bb
merge lib and imports
2020-07-02 15:53:41 -07:00
collin
ee2db05b2e
fix imports
2020-07-02 15:47:40 -07:00
collin
a76a51bcd7
fix multiple import bug and update tests
2020-07-02 05:48:43 -07:00
collin
c30a50c5dc
retrieve import definitions at program execution
2020-07-02 05:21:06 -07:00
collin
14f5f448be
resolve all definitions prior to program execution
2020-07-02 03:56:52 -07:00
collin
a422027e12
fix nested import parsing bug
2020-07-01 21:43:06 -07:00
collin
6a04dd0f58
refactor import file parsing. constraints for imports wip
2020-07-01 21:05:57 -07:00
collin
330bfe46c8
refactor import * for packages and leo files only
2020-06-30 13:31:27 -07:00
collin
e08ad6698c
fix group and field allocation
2020-06-29 22:03:19 -07:00
collin
6fbb848015
add const mut check
2020-06-29 20:29:53 -07:00
collin
45a2664fd9
Merge branch 'feature/lib-and-imports' of github.com:AleoHQ/leo into feature/comparator
2020-06-29 19:52:47 -07:00
collin
d905ffd569
impl importing from package lib, file, directory, and star
2020-06-29 17:47:59 -07:00
collin
24cf5a0181
Merge branch 'master' of github.com:AleoHQ/leo into feature/lib-and-imports
2020-06-29 14:25:43 -07:00
collin
9854c8c983
use updated sha2 functions
2020-06-29 14:11:12 -07:00
collin
b8b0da305b
merge master
2020-06-29 14:05:12 -07:00
Collin Chin
84002cf3e7
Merge pull request #82 from AleoHQ/dependabot/cargo/sha2-0.9.0
...
Bump sha2 from 0.8.2 to 0.9.0
2020-06-29 13:56:39 -07:00
Collin Chin
60e592edd7
Merge pull request #84 from AleoHQ/fix/spacing
...
require spacing after keywords and add optional comma after circuit fields
2020-06-29 13:40:59 -07:00
Collin Chin
d1c5c9e928
Merge pull request #80 from AleoHQ/feature/cli
...
Add debug flag, improve CLI messages, add num_constraints, add 'leo clean'
2020-06-29 13:23:58 -07:00
collin
457a1b26bc
add comma to circuit member field def
2020-06-29 13:05:41 -07:00
collin
4e4e21a53e
merge master
2020-06-29 12:46:38 -07:00
dependabot-preview[bot]
f061c8ea82
Bump sha2 from 0.8.2 to 0.9.0
...
Bumps [sha2](https://github.com/RustCrypto/hashes ) from 0.8.2 to 0.9.0.
- [Release notes](https://github.com/RustCrypto/hashes/releases )
- [Commits](https://github.com/RustCrypto/hashes/compare/sha2-v0.8.2...sha2-v0.9.0 )
Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-06-29 11:09:36 +00:00
howardwu
c622b157f5
Cleanup
2020-06-28 19:36:45 -07:00
howardwu
c1243a2e74
Adds the command
2020-06-28 18:53:09 -07:00
howardwu
607685122b
Update logger, add debug flag, improve CLI messages, add num_constraints
2020-06-28 18:24:36 -07:00
Howard Wu
b4cfa64167
Adds ci.yml ( #77 )
...
* Adds ci.yml
* Update ci script
* Update Cargo.toml
* Update to ubuntu-latest
* Update dependencies
* Update git deps with rev
* Update ci script
* Update ci script
* Update ci script
* Update code coverage
* Update code coverage
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI
* Update CI script
* Update CI script
2020-06-27 20:16:38 -07:00
collin
878310f793
add import directory parsing
2020-06-26 23:47:11 -07:00
collin
8825a0741c
clean up for pr
2020-06-26 19:06:52 -07:00
collin
f64dfcf410
refactor import constraints into separate files
2020-06-26 18:09:28 -07:00
collin
a4a9ed05ea
impl constraints and tests for multiple imports
2020-06-26 17:12:04 -07:00
collin
5900923d9d
impl constraints for single imports
2020-06-26 15:42:52 -07:00
collin
b5d90b857b
impl import package syntax for ast and types
2020-06-26 14:18:05 -07:00
collin
a8cbbee392
fix integer and field gadgets
2020-06-25 17:19:32 -07:00
collin
7233e55dc1
impl comparator gadgets for fields and integers
2020-06-25 15:58:37 -07:00
collin
cc8a3d9878
move integer enum and errors into compiler
2020-06-25 14:27:19 -07:00
collin
47ef6be719
set inputs size from bytes
2020-06-24 21:40:17 -07:00
collin
504480b3d7
serialize program into bytes file
2020-06-24 21:05:11 -07:00
collin
7bc52ada9e
evaluate all indices to expressions
2020-06-24 16:57:15 -07:00
collin
f1e9df7c95
evaluate range bounds to rust usize type
2020-06-24 16:30:49 -07:00
collin
1fafbab5ee
parse integer later in program. derive serde for basic program types
2020-06-24 16:02:20 -07:00
collin
5f0b3e2b0c
parse boolean later in program
2020-06-24 15:33:05 -07:00
collin
0159b1c0cc
remove print
2020-06-24 12:08:10 -07:00
collin
25a66d1f58
impl multiple returns and test
2020-06-23 23:56:51 -07:00
collin
2291cc51fd
fix return type namespaces
2020-06-23 17:48:35 -07:00
collin
c2862c7a0c
add formatting for cli errors
2020-06-22 23:20:55 -07:00
collin
5bc1bc022d
add file path to formatted errors
2020-06-22 22:32:57 -07:00
collin
ea81f9bc98
add square root example
2020-06-22 21:39:24 -07:00
collin
2f3a51860b
fix circuit name
2020-06-22 21:02:18 -07:00
collin
0a990bdb4e
Merge branch 'master' of https://github.com/AleoHQ/language into fix/namespace
2020-06-22 18:35:10 -07:00
collin
5865149c06
fix index evaluation
2020-06-22 18:28:30 -07:00
collin
eeaf1b4ae8
remove unused compiler errors
2020-06-22 16:39:33 -07:00
collin
c513fd1626
reformat import errors
2020-06-22 16:28:12 -07:00
collin
8d93f3e079
fix conditional namespace conflict
2020-06-22 16:12:25 -07:00
collin
1dc79ef604
add unique namespaces to function calls
2020-06-22 15:42:46 -07:00
collin
cff3be9d01
add unique namespaces to statement gadget calls
2020-06-22 13:11:01 -07:00
collin
9f27d22486
remove non-formatted errors for program value
2020-06-20 20:40:17 -07:00
collin
d506158499
remove non-formatted errors for expressions
2020-06-20 20:17:04 -07:00
collin
632d98b284
remove non-formatted errors for primitive data types
2020-06-20 18:59:52 -07:00
collin
d1dfdcb878
fix boolean namespaces and errors
2020-06-20 18:43:45 -07:00
collin
03c6af2d46
fix group namespaces and errors
2020-06-20 18:14:08 -07:00
collin
172ab78497
fix field namespaces and errors
2020-06-20 17:49:09 -07:00
collin
f915cab9f2
fix conflicts
2020-06-20 16:37:34 -07:00
collin
2e02d0906c
fix integer operation namespaces
2020-06-20 16:30:44 -07:00
collin
837a006e51
move error struct to types. fix integer namespaces
2020-06-20 15:24:46 -07:00
howardwu
d80734fbb5
Add a member_field_and_function test
2020-06-20 01:40:56 -07:00
howardwu
3df120f9d0
Rename identifier to circuit_name in Circuit type
2020-06-20 00:45:41 -07:00
collin
ec8a804654
uncomment tests, remove unused method
2020-06-19 23:21:55 -07:00
collin
9e93462f2b
merge master
2020-06-19 23:16:12 -07:00
collin
82a0afc17e
convert leo-inputs to span with errors. fix tests
2020-06-19 23:02:58 -07:00
howardwu
03b59b573b
Update file extensions to new convention
2020-06-19 22:07:02 -07:00
collin
2743b23e1e
convert functions to span with error
2020-06-19 21:49:42 -07:00
collin
f3e81184c1
convert expressions to span with error
2020-06-19 21:38:36 -07:00
collin
3d1fe9cc4b
convert statements to span with error
2020-06-19 19:04:13 -07:00
collin
6922d5dd73
convert identifer to span with error
2020-06-19 17:28:50 -07:00
collin
c54f1817ce
impl custom span and error structs
2020-06-19 15:47:09 -07:00
collin
71a0e14bea
Merge branch 'master' of https://github.com/AleoHQ/language into feature/const
2020-06-17 17:32:24 -07:00
Howard Wu
267837e169
Merge pull request #63 from AleoHQ/remove/visibility
...
Remove/visibility
2020-06-17 16:52:19 -07:00
collin
51f603b881
add span error formatting for inputs
2020-06-17 15:40:39 -07:00
collin
cf9d903a2a
remove reserved characters
2020-06-16 19:18:02 -07:00
collin
4d1bf9071c
add span to input values
2020-06-16 19:13:11 -07:00
collin
874bbe5a10
merge remove/visiblity
2020-06-16 15:14:52 -07:00
collin
1e0903c32b
merge master, update readme
2020-06-16 12:25:42 -07:00
Collin Chin
c8b6f66210
Merge pull request #62 from AleoHQ/feature/default
...
Improves compilation time by turning off unused features in snarkOS
2020-06-16 09:51:14 -07:00
collin
7248814ac7
impl let/const for circuits and value wrappers
2020-06-16 09:49:45 -07:00
collin
1214bed387
Merge branch 'master' of https://github.com/AleoHQ/language into refactor/conditional
2020-06-15 21:37:43 -07:00
howardwu
7a8aaf8166
Improves compilation time by turning off unused features in snarkOS
2020-06-15 21:27:25 -07:00
collin
5ec6696e74
merge snarkos master changes
2020-06-15 20:05:41 -07:00
collin
0168902a7d
update snarkos master
2020-06-15 19:32:37 -07:00
collin
eeaef78632
impl allocate value for let definition
2020-06-15 19:25:16 -07:00
collin
b423e532cb
let and const wip
2020-06-15 18:25:33 -07:00
collin
c77e6a51b3
remove visibility syntax and functionality
2020-06-15 13:38:07 -07:00
collin
4efd06fd41
merge refactor/program-struct
2020-06-15 11:22:47 -07:00
collin
cc39e8241e
Merge branch 'master' of https://github.com/AleoHQ/language
2020-06-15 11:11:56 -07:00
collin
8ff4ddafb2
remove CS trait from program struct
2020-06-15 11:11:35 -07:00
collin
8ea11dbab7
add type resolution for values and fix tests
2020-06-13 17:43:59 -07:00
collin
499805efdf
add field and group evaleq
2020-06-13 14:21:40 -07:00
collin
1eaaed269d
impl chained and nested conditionals
2020-06-13 03:39:51 -07:00
collin
1e1e4b86d9
move conditional tests into statement module
2020-06-13 02:08:21 -07:00
collin
c7eccdc87e
impl for loop statements for conditional
2020-06-13 02:04:31 -07:00
collin
2d17b39da6
impl mutable statements in basic conditional
2020-06-13 00:47:09 -07:00
collin
4c64edb032
test conditional basic assert statements
2020-06-12 19:32:16 -07:00
collin
50be017881
impl assert statement in basic conditional. use eq comparator gadget
2020-06-12 18:28:41 -07:00
collin
3f668422fd
enforce name, type, visibility of inputs. add tests
2020-06-11 14:40:27 -07:00
collin
824a6059fb
split up input loading and parsing in compiler
2020-06-11 11:43:05 -07:00
collin
52f0d012c8
fix tests
2020-06-10 17:53:38 -07:00
collin
67b8a48fcf
public input booleans and integers
2020-06-10 16:14:55 -07:00
collin
643cd3026e
initial private boolean input support
2020-06-09 16:36:15 -07:00
collin
eeb438ed19
Merge branch 'master' of https://github.com/AleoHQ/language into feature/leo-inputs
2020-06-09 12:14:43 -07:00
collin
39b8eda8cd
ignore import tests
2020-06-08 19:31:29 -07:00
collin
bc7f4719c3
include_bytes integers tests
2020-06-08 19:13:47 -07:00
collin
b4ed9ca4bc
include_bytes statements tests
2020-06-08 18:58:41 -07:00
collin
54b1453ddc
include_bytes mutability tests
2020-06-08 18:55:44 -07:00
collin
20a01ce2e8
include_bytes import tests
2020-06-08 18:52:35 -07:00
collin
ac9395f1fd
include_bytes group tests
2020-06-08 18:39:10 -07:00
collin
2ab0147e80
include_bytes function tests
2020-06-08 18:31:21 -07:00
collin
b3ec78c6fd
include_bytes field tests
2020-06-08 18:27:11 -07:00
collin
c0682de33d
include_bytes circuit tests
2020-06-08 18:12:40 -07:00
collin
8e8f00467a
include_bytes array tests
2020-06-08 17:51:06 -07:00
collin
834055abf5
use include_bytes for boolean test
2020-06-08 17:28:09 -07:00
collin
e10a1e1be0
merge master
2020-06-08 10:49:31 -07:00
howardwu
837d107a54
cargo fmt
2020-06-07 23:30:39 -07:00
howardwu
79bea057b3
Remove unused dependencies, add profiles
2020-06-07 23:01:57 -07:00
howardwu
988f58618e
Adds configuration files for tooling
2020-06-07 22:53:45 -07:00
howardwu
653f0de69f
Update dependencies
2020-06-07 22:43:53 -07:00
howardwu
85ccf1b423
Introduces LeoParser, removes pest for leo-compiler
2020-06-07 22:21:31 -07:00
howardwu
81407ac182
Fix tests
2020-06-07 21:26:49 -07:00
howardwu
6ad5dc75d5
Migrates program
2020-06-07 20:57:22 -07:00
howardwu
35a897282f
Migrates imports
2020-06-07 20:50:37 -07:00
howardwu
6f9f397310
Migrates circuits
2020-06-07 20:45:19 -07:00
howardwu
928f67c00b
Migrates Functions
2020-06-07 20:35:50 -07:00
howardwu
3a554af9fe
Migrate statements
2020-06-07 20:24:27 -07:00
howardwu
bc1c37faa0
Restructure types
2020-06-07 19:47:35 -07:00
howardwu
40eca302a6
Migrate assignee
2020-06-07 19:39:43 -07:00
howardwu
5cdcdd5c12
Migrates expressions, type, and variable to leo-types
2020-06-07 19:19:38 -07:00
howardwu
b9baafd57f
Migrates integer, identifier, and input_value
2020-06-07 18:22:59 -07:00
howardwu
54b531c27f
Rename function components
2020-06-07 17:28:10 -07:00
howardwu
a380d83c75
Migrate functions
2020-06-07 17:22:22 -07:00
howardwu
eb5c3864a7
Migrate assignee
2020-06-07 17:05:21 -07:00
howardwu
6d9d92dcaf
Migrate spread and range
2020-06-07 17:00:00 -07:00
howardwu
720dfeefca
Migrate access
2020-06-07 02:43:56 -07:00
howardwu
507a084d7f
Migrates variable
2020-06-07 02:28:18 -07:00
howardwu
d13326af98
Migrate circuits
2020-06-07 02:23:24 -07:00
howardwu
34a64412b5
Migrate expressions
2020-06-07 02:03:16 -07:00
howardwu
6d03a6a48f
Migrates statements
2020-06-07 01:26:35 -07:00
howardwu
aecd771d53
Migrates imports
2020-06-07 01:04:35 -07:00
howardwu
85f38d3ed0
Migrates group value
2020-06-07 00:54:48 -07:00
howardwu
ad0a9c5381
Adds statements directory, moves for statement
2020-06-07 00:49:29 -07:00
howardwu
47bcb069ba
Migrates boolean value
2020-06-07 00:47:09 -07:00
howardwu
103a12f7ab
Split ast into operations, types, and values
2020-06-07 00:41:13 -07:00
howardwu
3286eac221
Removes unused imports and reorders toml in leo-compiler
2020-06-06 23:26:48 -07:00
howardwu
7f566782e3
Refactors SyntaxError to leo-ast
2020-06-06 23:23:26 -07:00
howardwu
a72a333877
Migrates ast to leo-ast module
2020-06-06 23:17:40 -07:00
collin
01552cec52
test u128
2020-06-05 16:51:26 -07:00
collin
e564822a75
test u8, u16, u32, u64
2020-06-05 16:35:50 -07:00
collin
c72cf61ad2
impl integer gadget tests. test u32
2020-06-05 15:34:06 -07:00
collin
c5868b430a
impl integer tester trait and macro. test u32
2020-06-05 14:09:12 -07:00
collin
31d2542d52
Merge branch 'dependency/snarkos-master' of https://github.com/AleoHQ/language into feature/test-syntax-new
2020-06-05 11:32:59 -07:00
collin
3e21184631
use snarkos master
2020-06-04 22:53:52 -07:00
collin
2e98490b29
fix statement test
2020-06-04 17:42:49 -07:00
collin
accfff46e0
add test syntax and cli command
2020-06-04 17:39:57 -07:00
collin
13e113d100
add test type to pest
2020-06-04 16:55:23 -07:00
collin
bd54f367cf
impl syntax error handling
2020-06-04 15:44:38 -07:00
collin
0e8ee81108
remove old code
2020-06-04 14:41:09 -07:00
collin
c3f17e4dc9
use new integer gadgets
2020-06-04 14:32:30 -07:00
collin
ab6ed9cfe6
use new integers path
2020-06-04 13:35:12 -07:00
collin
941417b255
cargo fmt
2020-06-02 16:58:09 -07:00
collin
c8229cef18
test field comparators
2020-06-02 16:56:11 -07:00
collin
b4c163ce4f
add field gadget tests
2020-06-02 16:06:25 -07:00
collin
91e8febffe
add field operation tests
2020-06-02 15:33:09 -07:00
collin
2e188b483b
impl FieldType gadgets
2020-06-02 13:25:07 -07:00
collin
2d4efdfd5b
impl FieldType operations
2020-06-02 12:51:14 -07:00
collin
4657f565f5
remove trait parameters from program types
2020-06-02 12:33:24 -07:00
collin
674f0dc83d
remove Field trait parameter from InputValue
2020-06-02 12:15:55 -07:00
collin
a2dfc5e9fc
deprecate FieldElement. use FieldType
2020-06-02 12:09:14 -07:00
collin
0240eed168
create FieldType module
2020-06-02 11:12:49 -07:00
collin
69df8306a5
fix dependency
2020-06-01 18:35:43 -07:00
collin
8ab5108558
add ToBytesGadget to GroupType
2020-06-01 18:16:21 -07:00
collin
e5ee1cfe4d
add ToBitsGadget to GroupType
2020-06-01 18:14:23 -07:00
collin
887e374e28
remove extra dependency and rename error
2020-06-01 18:05:24 -07:00
collin
8852c17857
simplify GroupType trait parameters
2020-06-01 17:52:33 -07:00
collin
5db9b043dc
cargo fmt
2020-06-01 17:23:40 -07:00
collin
f144571530
impl group cond_select
2020-06-01 17:23:13 -07:00
collin
ad2d9f1192
impl group alloc input
2020-06-01 14:20:14 -07:00
collin
d1297fc60c
impl group partialeq, eq, enforce_eq, cond_enforce_eq
2020-06-01 12:15:49 -07:00
collin
d1e448d630
impl group sub for edwards
2020-05-30 17:19:26 -07:00
collin
faf726e3b1
add (x, y)group syntax
2020-05-30 17:05:07 -07:00
collin
9ba3dfbb6b
impl group add for edwards
2020-05-30 15:37:11 -07:00
collin
8a5d3e7718
update tests and leo cli
2020-05-29 17:34:31 -07:00
collin
31ec24670c
add groupType to compiler
2020-05-29 16:43:39 -07:00
collin
1232481219
add partial grouptype module
2020-05-29 16:09:27 -07:00
collin
19f6e64c48
remove snarkos group trait from compiler
2020-05-29 15:55:57 -07:00
collin
1da093e3bd
impl basic assertion, ternary, iteration tests
2020-05-20 17:08:32 -07:00
collin
1a0d7235cd
impl basic function and import tests. fix import parsing
2020-05-20 15:51:57 -07:00
collin
e07d43c287
impl circuit static, self, and failure tests
2020-05-20 12:45:40 -07:00
collin
50bf469d8b
impl basic circuit tests
2020-05-19 21:59:00 -07:00
collin
28451ee269
impl array, basic field, basic group tests
2020-05-19 17:08:38 -07:00
collin
9a9e37e0f4
add new testing methods. add boolean tests.
2020-05-19 15:45:40 -07:00
collin
e5fea1e468
finish mutability tests. add testing helpers
2020-05-19 12:41:21 -07:00
collin
1c733b5dd9
deprecate new_variable methods
2020-05-19 12:04:01 -07:00
collin
a9a8cb95c6
impl mutability tests. simplify mut expression evaluation
2020-05-19 12:01:19 -07:00
collin
9309f95a89
Merge branch 'master' into feature/implicit-types
2020-05-18 15:17:56 -07:00
collin
aa63cf1dbb
implicit arrays and multiple definitions
2020-05-18 15:17:17 -07:00
collin
d0c88a08be
implict ternary expression
2020-05-18 11:44:14 -07:00
collin
2b48224689
implicit function returns. Remove expect_type() methods
2020-05-18 10:56:25 -07:00
howardwu
33f518d1d4
Fixes 'leo build' to compile programs again. Updates tests to run on new model
2020-05-16 22:05:26 -07:00
collin
067f4905c2
implicit binary operations
2020-05-16 19:56:48 -07:00
collin
a31ee8b884
initial support for implicit value types
2020-05-15 17:35:12 -07:00
collin
fd51ee28e2
add from type conversion method
2020-05-15 13:43:06 -07:00
collin
5c005c4b8f
pest implicit number type
2020-05-15 12:51:08 -07:00
collin
ab98d5ae77
impl pass by value circuit fields into circuit functions
2020-05-14 18:23:54 -07:00
collin
021379458d
impl circuit Self type
2020-05-14 17:07:09 -07:00
collin
b984c46a51
pest Self type added
2020-05-14 13:41:32 -07:00
collin
44b4df2404
make circuit naming consistent. return proper errors
2020-05-14 13:32:16 -07:00
collin
5fb0b58b68
support static circuit functions. add :: syntax
2020-05-14 12:31:19 -07:00
collin
ba84bf0d6c
impl circuit function calls
2020-05-13 20:50:18 -07:00
collin
3fb6430e1f
impl circuit function expressions
2020-05-13 19:43:07 -07:00
collin
b766f96d23
add circuit function types
2020-05-13 18:51:20 -07:00
collin
7640d27db4
pest static functions
2020-05-13 18:40:13 -07:00
collin
9f1803f6da
impl mutable circuit and arrays
2020-05-13 17:52:50 -07:00
collin
3b263d7cc9
impl mutable variable type
2020-05-13 15:19:25 -07:00
collin
87e8e67967
variable -> identifier, add pest mutable variable
2020-05-13 11:54:40 -07:00
collin
e41916e128
pest variable mutability
2020-05-12 21:33:08 -07:00
collin
91d241a5d8
change type struct -> circuit
2020-05-12 21:14:17 -07:00
collin
5046db8e2c
replace struct -> circuit in pest parsing
2020-05-12 20:54:32 -07:00
collin
88f850164e
rm unused errors
2020-05-12 20:23:45 -07:00
collin
c1df2b00b2
impl group add, sub
2020-05-12 20:20:35 -07:00
collin
162c0064b2
add group element errors
2020-05-12 20:07:24 -07:00
collin
6efc834948
impl group element values
2020-05-12 20:01:47 -07:00
howardwu
7e36d2b5fa
Standardize generic F and G order convention
2020-05-12 19:24:57 -07:00
collin
97272fa9d7
wip groups
2020-05-12 19:07:15 -07:00
collin
ab4a9c6058
syntax for nested arrays. enforce_eq for nested arrays
2020-05-12 13:42:10 -07:00
collin
7422c66d95
full support for arrays as inputs
2020-05-11 21:31:06 -07:00
collin
75a47c55dd
fix struct field validation. make if conditional parenthesis optional
2020-05-11 13:18:40 -07:00
collin
36018853a7
impl compiler error handling
2020-05-08 16:35:00 -07:00
collin
dee7b2782e
add u16, u64, u128
2020-05-06 18:49:12 -07:00
collin
73e431e9eb
refactor integer module, add uint8 type
2020-05-06 17:22:00 -07:00
collin
6919f62d44
impl leo-inputs
2020-05-06 12:57:24 -07:00
collin
dcd484a62f
fix imports
2020-05-05 18:43:31 -07:00
collin
d7167f5b2b
fix syntax for _type, struct fields, protected names
2020-05-05 18:04:25 -07:00
collin
983cd6675a
Merge branch 'development' of https://github.com/AleoHQ/language into development
2020-05-05 17:36:21 -07:00
collin
e720409ca3
refactor main function parameters
2020-05-05 17:36:03 -07:00
howardwu
ebbc6ee014
Adds leo input pest grammar
2020-05-04 19:34:10 -07:00
collin
d3989c36fd
remove comments, update readme
2020-05-04 16:52:32 -07:00
collin
10ca30ac93
impl pass by value functions
2020-05-04 16:42:40 -07:00
collin
98a7d0bdf6
impl 0, 1 or more return arg
2020-05-04 11:40:29 -07:00
collin
b091d6c63b
fix conflicts
2020-05-04 10:33:03 -07:00
howardwu
1350834bcd
Implements caching of builds and setups for reusable work
2020-05-02 20:10:22 -07:00
collin
fa4f786f22
impl let statements
2020-05-02 19:03:50 -07:00
howardwu
5f5a3399ac
Adds command
2020-05-02 18:08:04 -07:00
howardwu
f86c9d8076
Adds proving key file
2020-05-02 17:28:20 -07:00
howardwu
219f90cb17
Adds starter integration tests for u32
2020-05-01 22:10:40 -07:00
collin
b9afcff602
u32 assert equal
2020-04-30 20:46:59 -07:00
collin
b683e93762
impl assert_eq( , )
2020-04-30 14:00:30 -07:00
collin
1bfc31c4d5
impl field comparator functionality
2020-04-30 12:13:23 -07:00
collin
f071764548
fix field pow. fix eq vs enforce_eq
2020-04-30 11:36:35 -07:00
collin
e5513d7bcf
add exponentiation assignment
2020-04-30 10:34:49 -07:00
collin
90658f362d
impl operator assign statements
2020-04-30 10:27:13 -07:00
collin
48ab4747e0
fix multiple assignment bug
2020-04-27 17:15:54 -07:00
collin
1dcaa06ef0
early function termination
2020-04-27 17:00:02 -07:00
collin
c5fc02b51d
fix for loop syntax
2020-04-27 16:06:50 -07:00
collin
f69032c833
impl if else conditional statements
2020-04-27 14:36:05 -07:00
howardwu
d115870815
Moves compiler.rs to leo-compiler module
2020-04-26 22:37:08 -07:00
howardwu
026b59a67a
Rename program to compiler
2020-04-26 22:34:15 -07:00
howardwu
8c5be763ff
Compiler wip
2020-04-23 23:57:05 -07:00
howardwu
0a49dd1ec3
Adds compiler module
2020-04-23 18:52:43 -07:00