From 7f8411e83c672f66539e40b7f4bd718a39076577 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julien=20Valverd=C3=A9?= Date: Mon, 23 Mar 2026 20:15:43 +0100 Subject: [PATCH] Fix --- packages/effect-fc/src/Lens.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/effect-fc/src/Lens.ts b/packages/effect-fc/src/Lens.ts index 6c7da97..b0a1dcd 100644 --- a/packages/effect-fc/src/Lens.ts +++ b/packages/effect-fc/src/Lens.ts @@ -79,7 +79,9 @@ export const map = ( (b: B): (parent: A) => A }, ): Lens => { - const setF = + const setF = (parent: A, b: B) => set.length >= 2 + ? (set as (parent: A, b: B) => A)(parent, b) + : (set as (b: B) => (parent: A) => A)(b)(parent) return make({ get: Effect.map(self.get, get), @@ -87,7 +89,7 @@ export const map = ( modify: ( f: (b: B) => Effect.Effect ) => self.modify((a: A) => - Effect.flatMap(f(get(a)), ([c, next]) => Effect.succeed([c, set(a, next)] as const)) + Effect.flatMap(f(get(a)), ([c, next]) => Effect.succeed([c, setF(a, next)] as const)) ), }) }