diff options
| author | Bruce Hill <bruce@bruce-hill.com> | 2025-09-21 18:16:32 -0400 |
|---|---|---|
| committer | Bruce Hill <bruce@bruce-hill.com> | 2025-09-21 18:16:32 -0400 |
| commit | 7e3e245f6809946ea06ef1998bcabb7e0902fbd7 (patch) | |
| tree | 67c06d75ecff021cd70073f8a7da278cfe7f6410 /test/defer.tm | |
| parent | 7198afcfec38f8f0cc82e093567e2b098a42970f (diff) | |
Deprecate `defer`
Diffstat (limited to 'test/defer.tm')
| -rw-r--r-- | test/defer.tm | 79 |
1 files changed, 0 insertions, 79 deletions
diff --git a/test/defer.tm b/test/defer.tm deleted file mode 100644 index 8f0cb3be..00000000 --- a/test/defer.tm +++ /dev/null @@ -1,79 +0,0 @@ -func main() - x := 123 - nums : @[Int] - do - defer - nums.insert(x) - x = 999 - - assert nums[] == [123] - assert x == 999 - - defer - say("All done!") - - for word in ["first", "second", "third"] - defer - say("Got $word deferred") - - if word == "second" - say("<skipped>") - skip - else if word == "third" - say("<stopped>") - stop - - for i in 3 - defer - say("Inner loop deferred $i") - - if i == 2 - say("<skipped inner>") - skip - else if i == 3 - say("<stopped inner>") - stop - - say("Made it through inner loop") - - say("Made it through the loop") - - >> thunk := func(return_early=no) - say("Entering thunk") - defer - say("Deferred thunk cleanup") - - if return_early - say("Returning early...") - return - - say("Finished thunk") - - >> thunk(no) - >> thunk(yes) - - >> defer_func(yes) - >> defer_func(no) - - >> counter := make_counter() - assert counter() == 1 - assert counter() == 2 - assert counter() == 3 - -func defer_func(return_early=no) - say("Entering defer_func") - defer - say("Deferred defer_func cleanup") - - if return_early - say("Returning early...") - return - - say("Finished defer_func") - -func make_counter(->func(->Int)) - i := 1 - return func() - defer i += 1 - return i - |
