MCPcopy
hub / github.com/Effect-TS/effect / transfer

Function transfer

packages/effect/test/STM.test.ts:103–115  ·  view source on GitHub ↗
(
  receiver: TRef.TRef<number>,
  sender: TRef.TRef<number>,
  much: number
)

Source from the content-addressed store, hash-verified

101 )
102
103const transfer = (
104 receiver: TRef.TRef<number>,
105 sender: TRef.TRef<number>,
106 much: number
107): Effect.Effect<number> =>
108 pipe(
109 TRef.get(sender),
110 STM.tap((balance) => STM.check(() => balance >= much)),
111 STM.tap(() => pipe(receiver, TRef.update((n) => n + much))),
112 STM.tap(() => pipe(sender, TRef.update((n) => n - much))),
113 STM.zipRight(TRef.get(receiver)),
114 STM.commit
115 )
116
117const compute3TRefN = (
118 n: number,

Callers 1

STM.test.tsFile · 0.85

Calls 4

pipeFunction · 0.90
checkMethod · 0.80
getMethod · 0.65
updateMethod · 0.65

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…