From 7e3e245f6809946ea06ef1998bcabb7e0902fbd7 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Sun, 21 Sep 2025 18:16:32 -0400 Subject: Deprecate `defer` --- test/defer.tm | 79 --------------------------------------------------------- test/lambdas.tm | 2 +- 2 files changed, 1 insertion(+), 80 deletions(-) delete mode 100644 test/defer.tm (limited to 'test') 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("") - skip - else if word == "third" - say("") - stop - - for i in 3 - defer - say("Inner loop deferred $i") - - if i == 2 - say("") - skip - else if i == 3 - say("") - 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 - diff --git a/test/lambdas.tm b/test/lambdas.tm index 1d1b2775..5508dba2 100644 --- a/test/lambdas.tm +++ b/test/lambdas.tm @@ -31,6 +31,6 @@ func main() fn := func() return func() return func() - defer say("$outer") + say("$outer") return outer assert fn()()() == "Hello" -- cgit v1.2.3