From d741640d286164974232edc26f9fb136622d3cdf Mon Sep 17 00:00:00 2001 From: littensy <56808540+littensy@users.noreply.github.com> Date: Sun, 22 Feb 2026 23:21:57 -0800 Subject: [PATCH] refactor: remove recursive() --- packages/charm/src/index.d.ts | 15 --------------- packages/charm/src/init.luau | 22 ---------------------- 2 files changed, 37 deletions(-) diff --git a/packages/charm/src/index.d.ts b/packages/charm/src/index.d.ts index e7b3f1d..f1941e8 100644 --- a/packages/charm/src/index.d.ts +++ b/packages/charm/src/index.d.ts @@ -272,21 +272,6 @@ export function observe( fn: (value: V, key: K) => Cleanup | void, ): Cleanup; -/** - * Disables recursive checks for the current reactive node. Currently, only - * computed signals use recursion checks, as effects allow recursion. - * - * @example - * ```ts - * computed(() => { - * recursive(); - * setCount(getCount() + 1); - * return getCount(); - * }) - * ``` - */ -export function recursive(): void; - /** * Creates a deep reactive value that tracks properties when they're accessed. * Returns a proxy object that subscribes to changes on any nested property diff --git a/packages/charm/src/init.luau b/packages/charm/src/init.luau index b3c4844..ff30b1f 100644 --- a/packages/charm/src/init.luau +++ b/packages/charm/src/init.luau @@ -876,27 +876,6 @@ local function subscribe(getter: () -> T, fn: (state: T, lastState: T) -> ()) end) end ---[[ - Disables recursive checks for the current reactive node. Currently, only - computed signals use recursion checks, as effects allow recursion. - - @example - ```luau - computed(function() - recursive() - setCount(getCount() + 1) - return getCount() - end) - ``` -]] -local function recursive() - if activeSub then - activeSub.flags = bit32.band(activeSub.flags, bit32.bnot(RECURSED_CHECK)) - else - warn(debug.traceback("recursive() can only be called inside a reactive node.", 2)) - end -end - --[[ Calls the callback function for each unique key in the table returned by the getter. The callback is called once for each key, and again when a new key @@ -1185,7 +1164,6 @@ return { batch = batch, subscribe = subscribe, listen = listen, - recursive = recursive, observe = observe, mapped = mapped :: (( getter: () -> { [KI]: VI },