
* Add case guards to parser * Add pattern guards to infer types and fcode generation * Add functions guards * Add test for patterns guards * Update docs * Update CHANGELOG.md * Remove stateful context from Env for guards * Elaborate on guards * Add failing test for stateful pattern guards * Implement multiple guards * Fix tests * Disable aevm related tests * Split the sentence before if and otherwise * Fix type in docs * Implement multiple exprs in the same guard * Fix pretty printing * Change tests to include multiple guards * Add test for non-boolean guards * Desugar clauses with guards * Fix incomplete patterns bug * Fix docs * Compile to icode when no guards are used * Revert "Disable aevm related tests" This reverts commit e828099bd97dffe11438f2e48f3a92ce3641e85b.
11 lines
147 B
Plaintext
11 lines
147 B
Plaintext
contract C =
|
|
type state = int
|
|
|
|
entrypoint init() = f(4)
|
|
|
|
function
|
|
f(x) | x > 0 = 1
|
|
f(x) | g(x) = 2
|
|
|
|
stateful function g(x) = x < 0
|