Commit Graph

4297 Commits

Author SHA1 Message Date
gluax
7b849b620c Merge branch 'parser-refactor' of github.com:AleoHQ/leo into feature/warnings 2022-04-19 12:47:06 -07:00
Eric McCarthy
ac005628fe [ABNF] merge #1752 2022-04-19 11:59:22 -07:00
Mazdak Farrokhzad
267fda05e7 simplify parse_assign_statement 2022-04-19 14:11:09 +02:00
Alessandro Coglio
cb30765ab5 [ABNF] Add rule for numeric literals.
This does not change the language. It just factors things better and introduces
more nomenclature in the grammar.
2022-04-18 17:35:14 -07:00
Collin Chin
92ddc88477
Merge pull request #1755 from AleoHQ/abnf-input-files
[ABNF] Add (first draft of) input grammar.
2022-04-18 14:38:08 -07:00
gluax
54c936cc61 leo warnings, disable unused errors for now 2022-04-18 14:06:28 -07:00
gluax
c8b44141eb fix some span and input parsing issues 2022-04-18 11:33:43 -07:00
Collin Chin
c25e11afb2
Merge pull request #1757 from AleoHQ/dependabot/cargo/testnet3/clap-3.1.9
Bump clap from 3.1.8 to 3.1.9
2022-04-18 09:10:09 -07:00
Collin Chin
839ec01322
Merge pull request #1754 from AleoHQ/dependabot/cargo/testnet3/tracing-0.1.34
Bump tracing from 0.1.33 to 0.1.34
2022-04-18 09:10:02 -07:00
Collin Chin
0d4a5ffad1
Merge pull request #1753 from AleoHQ/dependabot/cargo/testnet3/toml-0.5.9
Bump toml from 0.5.8 to 0.5.9
2022-04-18 09:09:50 -07:00
Collin Chin
7ffc640718
Merge pull request #1752 from AleoHQ/abnf-bin-expr
[ABNF] Add rule for binary expressions.
2022-04-18 09:09:31 -07:00
dependabot[bot]
711dd9309f
Bump clap from 3.1.8 to 3.1.9
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.8 to 3.1.9.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v3.1.8...v3.1.9)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-18 10:20:25 +00:00
Alessandro Coglio
29f797efae [ABNF] Add (first draft of) input grammar.
This is the (sub)grammar for input files. It is an initial draft, written based
on the Notion page 'Leo Input File Doc/Spec'. This should be compared with the
currently implemented parser of input (i.e. .in) files.

As the Leo Reference will describe (that part has not been written yet), the
input grammar is based on the lexical grammar, i.e. an input file consists of
tokens, comments, and whitespace. However, only some tokens (compared to the
syntactic grammar for Leo code files) are used, namely the ones reachable from
the `input-file` nonterminal.

Currently (i.e. im this initial version of Leo) `input-type` is (any) `type` and
`input-expression` is just a `literal`, but these may evolve as we extend the
language (e.g. we'll probably disallow circuit types and allow tuple and array
constructions). The intent is that `input-type` will be a subset of `type` and
that `input-expression` will be a subset of `expression`.
2022-04-15 19:54:41 -07:00
dependabot[bot]
cf8a780359
Bump tracing from 0.1.33 to 0.1.34
Bumps [tracing](https://github.com/tokio-rs/tracing) from 0.1.33 to 0.1.34.
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.33...tracing-0.1.34)

---
updated-dependencies:
- dependency-name: tracing
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-15 10:13:39 +00:00
dependabot[bot]
99027b2c69
Bump toml from 0.5.8 to 0.5.9
Bumps [toml](https://github.com/alexcrichton/toml-rs) from 0.5.8 to 0.5.9.
- [Release notes](https://github.com/alexcrichton/toml-rs/releases)
- [Commits](https://github.com/alexcrichton/toml-rs/compare/0.5.8...0.5.9)

---
updated-dependencies:
- dependency-name: toml
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-15 10:13:24 +00:00
Alessandro Coglio
7691e35d86 [ABNF] Add rule for binary expressions.
This does not change the language. It just adds a rule to name binary
expressions explicitly. This makes the relation with ternary expressions
clearer, and as usual it explicates more terminology.
2022-04-14 22:26:25 -07:00
Eric McCarthy
447e50f8b4 [ABNF] disallow bidi override codepoints 2022-04-14 02:04:20 -07:00
Collin Chin
cd8ac3b8d2
remove unused code and dependencies (#1749) 2022-04-13 17:08:45 -07:00
collin
065f16a93b cargo fmt 2022-04-13 15:25:35 -07:00
collin
f53817c5f5 implement real address literal check 2022-04-13 15:21:08 -07:00
collin
b6fb3d0a36 remove unused code and dependencies 2022-04-13 14:28:01 -07:00
Mazdak Farrokhzad
b955b77ac2 parser: minor cleanup + span fix 2022-04-13 22:52:53 +02:00
Mazdak Farrokhzad
66efa91b08 simplify parse_function_parameter_mode 2022-04-13 22:27:56 +02:00
Mazdak Farrokhzad
31fcc2f216 parser: store (prev_)token 2022-04-13 22:20:48 +02:00
Alessandro Coglio
515e471c8b
[ABNF] Add a rule for function calls. (#1747)
* [ABNF] Add a rule for function calls.

This does not change the language. It just slightly reformulates the grammar for
greater clarity and to help establish a nomenclature for constructs.

Also remove a trailing space.

* [ABNF] Re-generate markdown.

Co-authored-by: collin <16715212+collinc97@users.noreply.github.com>
2022-04-13 12:22:04 -07:00
Mazdak Farrokhzad
6a81022c26 leave todo re. sizeof Span 2022-04-13 21:05:17 +02:00
Mazdak Farrokhzad
4ac64710b5 lazify lexer 2022-04-13 21:05:17 +02:00
Collin Chin
49306f6132
Merge pull request #1746 from AleoHQ/feature/rename-const-params-to-constant
[Impl] Rename const fn args to constant
2022-04-12 14:16:05 -07:00
gluax
ba993b3a83 match pattern cleanup 2022-04-12 13:13:02 -07:00
gluax
198ceee536 fix token and constant pairing 2022-04-12 12:22:52 -07:00
gluax
168080942b better match pattern for catching more error situations 2022-04-12 11:52:12 -07:00
gluax
9f79ca7169 allow const but throw a recoverable error 2022-04-12 11:46:35 -07:00
Collin Chin
8770247cba
Merge pull request #1745 from AleoHQ/dependabot/cargo/testnet3/tracing-subscriber-0.3.11
Bump tracing-subscriber from 0.3.10 to 0.3.11
2022-04-11 10:44:42 -07:00
Collin Chin
5a24880ecf
Merge pull request #1744 from AleoHQ/dependabot/cargo/testnet3/tracing-0.1.33
Bump tracing from 0.1.32 to 0.1.33
2022-04-11 10:44:26 -07:00
gluax
304044546c add constant keyword to grammar, change parameter grammar 2022-04-11 10:01:54 -07:00
dependabot[bot]
32b8ab0f7f
Bump tracing-subscriber from 0.3.10 to 0.3.11
Bumps [tracing-subscriber](https://github.com/tokio-rs/tracing) from 0.3.10 to 0.3.11.
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.3.10...tracing-subscriber-0.3.11)

---
updated-dependencies:
- dependency-name: tracing-subscriber
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 10:21:16 +00:00
dependabot[bot]
7576418c71
Bump tracing from 0.1.32 to 0.1.33
Bumps [tracing](https://github.com/tokio-rs/tracing) from 0.1.32 to 0.1.33.
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.32...tracing-0.1.33)

---
updated-dependencies:
- dependency-name: tracing
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-04-11 10:21:08 +00:00
gluax
cfc5b00bad add constant keyword, only used for params 2022-04-10 23:10:55 -07:00
Collin Chin
20006958c0
Merge pull request #1743 from AleoHQ/abnf-integer-literals
[ABNF] Factor integer literals into a rule.
2022-04-08 11:51:57 -07:00
Alessandro Coglio
dc3363a858 [ABNF] Factor integer literals into a rule.
This mirrors the structure of the rules for types, where there is an
`integer-type` consisting of `unsigned-type` and `signed-type`.

There is no change to the language.
2022-04-08 19:08:47 +02:00
Collin Chin
f3fa8d91ae
Merge pull request #1742 from AleoHQ/abnf-public-keyword
[ABNF] Add `public` to keywords.
2022-04-07 14:07:42 -07:00
Alessandro Coglio
822da8009c [ABNF] Add public to keywords. 2022-04-07 22:07:37 +02:00
Collin Chin
7e6eae58c3
Merge pull request #1739 from AleoHQ/feature/add-private-public-inputs
[Impl] handle public inputs and params
2022-04-07 12:03:29 -07:00
gluax
016b669a8d make fields not public 2022-04-07 11:18:58 -07:00
gluax
8482430299 update abnf to reflect recent changes 2022-04-06 10:41:18 -07:00
gluax
a5b692a765 merge upstream testnet3 2022-04-06 10:25:26 -07:00
gluax
3936e6c202 doc new fn, test updates 2022-04-06 10:23:20 -07:00
gluax
cc5552c7ef make suggested changes 2022-04-06 10:20:43 -07:00
Collin Chin
71c87d45e4
Merge pull request #1741 from AleoHQ/feature/testnet3-cleanup
[Impl] Testnet3 Cleanup
2022-04-05 15:59:34 -07:00
Collin Chin
a4d8a29d6f
Merge branch 'testnet3' into feature/testnet3-cleanup 2022-04-05 15:00:00 -07:00