KtorZ
9c608ad9f1
Refactor cli's crate; split code into a hierarchy of modules.
...
This follows a simple convention:
- `main.rs` contains as little as possible and delegates both
data-types definitions and command executions to sub-modules.
- modules are named after their respective commands. For
sub-commands,
- Each command module can be in one of two forms:
- Either it is a leaf command, and it then contains an `Args`
struct that defines the command arguments; and a function
`exec` when outlines the execution logic.
- Or, it is a group command with multiple sub-commands. In which
case the module defines a `Cmd` struct encapsulating all
sub-commands; and also an `exec` function which simply
dispatches the logic to sub-functions.
---
This commit also removes the `dev` command which is currently
unused. The rationale being: if it's not there, it's not there.
2022-10-28 17:20:39 +02:00
KtorZ
6d0d938fb9
Extra project utilities in their own crate.
...
This was currently in the 'cli' crates, but this code is pretty standalone and need not to be mixed with the rest of the cli logic.
Ideally, we want the cli crate to be only a thin wrapper over functionality available from the rest of the lib crates.
2022-10-28 13:48:40 +02:00
rvcas
819256df99
feat: wrap up adding uplc builtins for now
2022-10-25 18:52:27 -04:00
rvcas
d5d2ba9cd7
feat: start creating aiken/builtin module
2022-10-25 18:52:27 -04:00
rvcas
a41d05f7b6
feat: change project structure
2022-10-24 00:09:00 -04:00
rvcas
825783ca61
feat: typecheck If expressions
2022-10-24 00:09:00 -04:00
rvcas
5244e58c9f
feat: typechecking is working
2022-10-24 00:09:00 -04:00
rvcas
cabc653167
feat: start expr inference
2022-10-24 00:09:00 -04:00
rvcas
81c87ab4da
feat: register import, types, and values in environment
2022-10-24 00:09:00 -04:00
rvcas
d0287d418b
feat: add prelude
2022-10-24 00:09:00 -04:00
rvcas
4df3de0a03
feat: some boilerplate for typechecking
2022-10-24 00:09:00 -04:00
rvcas
ed2ef4fa9b
feat: sort modules and detect cycles
2022-10-24 00:09:00 -04:00
rvcas
15c774b7d0
Release 0.0.21
...
aiken@0.0.21
flat-rs@0.0.21
uplc@0.0.21
Generated by cargo-workspaces
2022-10-23 17:58:21 -04:00
Kasey White
c89690aa77
Create unknown constructor error for decode
2022-10-23 17:54:21 -04:00
Kasey White
360a5b6017
preceding bytes output changes if you error before position 5
2022-10-23 17:54:21 -04:00
Kasey White
56984dea36
more spacing for parse error
2022-10-23 17:54:21 -04:00
Kasey White
15cfb22c8f
more detailed parse errors when decoding with flat
2022-10-23 17:54:21 -04:00
alessandrokonrad
4ef654b660
fixed clippy issue
2022-10-22 18:01:36 -04:00
alessandrokonrad
c6de827721
added apply_params_to_script function
2022-10-22 18:01:36 -04:00
alessandrokonrad
e6f3c40429
changed i64 -> i128
2022-10-19 17:04:43 -04:00
rvcas
ce875a3c47
Release 0.0.20
...
aiken@0.0.20
aiken-lang@0.0.20
flat-rs@0.0.20
uplc@0.0.20
Generated by cargo-workspaces
2022-10-17 17:22:50 -04:00
alessandrokonrad
a83c731eb1
fixed err description
2022-10-17 08:35:45 -04:00
alessandrokonrad
ad542a68e8
removed unnecessary return statement
2022-10-17 08:35:45 -04:00
alessandrokonrad
0856f6ccf2
added checked operators to some DefaultFunction
2022-10-17 08:35:45 -04:00
alessandrokonrad
cfc1f92646
leave as i128
2022-10-17 08:35:45 -04:00
alessandrokonrad
4e8fd53e70
fixed comments
2022-10-17 08:35:45 -04:00
alessandrokonrad
a14dae5863
changed slot_length to u32
2022-10-17 08:35:45 -04:00
alessandrokonrad
28b9fed8e5
added i128 integer support
2022-10-17 08:35:45 -04:00
rvcas
6e7ea45e11
fix: flip the cbor_hex if condition
2022-10-13 10:56:04 -04:00
rvcas
da89e9902c
feat: starting to get pretty error messages
2022-10-11 14:34:27 -04:00
rvcas
59d7b54473
feat: start integrating miette
2022-10-11 14:34:27 -04:00
rvcas
57dc50e3aa
chore: temp allow dead code
2022-10-09 15:39:28 -04:00
rvcas
03d4a6f1e1
chore: rename
2022-10-09 15:39:28 -04:00
rvcas
ff26db2245
feat: start project building
2022-10-09 15:39:28 -04:00
rvcas
2896b92203
Release 0.0.19
...
aiken@0.0.19
aiken-lang@0.0.19
Generated by cargo-workspaces
2022-10-04 17:10:21 -04:00
rvcas
6de41e64be
feat: add simple check command
2022-10-04 17:09:43 -04:00
rvcas
6ef8ba5c35
feat: if expressions
2022-10-04 16:32:32 -04:00
rvcas
dba82d544d
feat: record update syntax
2022-10-04 16:32:32 -04:00
rvcas
3ad915cafd
fix: list spread allowing no comma before spread
2022-10-04 16:32:32 -04:00
rvcas
fb1ff759e1
feat: function calls and captures
2022-10-04 16:32:32 -04:00
rvcas
1b61f4b25b
feat: field access
2022-10-04 16:32:32 -04:00
rvcas
34492f600c
test: empty function definition
2022-10-04 16:32:32 -04:00
rvcas
512431d27f
feat: anonymous functions
2022-10-04 16:32:32 -04:00
rvcas
695ac409b7
feat: assert and boolean negation
2022-10-04 16:32:32 -04:00
rvcas
c7c11d1bd5
feat: finish when clauses
2022-10-04 16:32:32 -04:00
Kasey White
722dc4b477
work on adding when clause
2022-10-04 16:32:32 -04:00
Kasey White
118a5ac54e
add some block parsing and a test (incomplete)
2022-10-04 16:32:32 -04:00
rvcas
4acb849f09
fix: include return type in one function def
2022-10-04 16:32:32 -04:00
rvcas
55f906482a
feat: strip for release builds
2022-10-04 16:32:32 -04:00
rvcas
c5450d37d5
chore: move lang tests to a submodule
2022-10-04 16:32:32 -04:00