This commit is contained in:
Kaan 2026-10-19 17:05:51 +03:00 • committed by GitHub
commit b448d26420
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 13 additions and 1 deletions

View file

@ -131,6 +131,8 @@ Creates a new context.
Calling `context()` returns a new context function.
Call this function with no arguments to get the context value.
If no context is set, the default value is returned, or an error is thrown
if no default was given.
Call this function with a value and a function to create a new context with
the given value.

View file

@ -40,7 +40,7 @@ local function context<T>(...: T): Context<T>
return (if value ~= nil_symbol then value else nil) :: T
end
if has_default ~= nil then
if has_default then
return default_value
else
error("attempt to get context when no context is set and no default context is set", 0)

View file

@ -2769,6 +2769,16 @@ TEST("context()", function()
end)
end)
end
do CASE "get context without default"
local ctx = context()
CHECK(not pcall(ctx))
root(function()
CHECK(not pcall(ctx))
end)
end
end)
TEST("nested effects cases", function()