MCPcopy Create free account
hub / github.com/Effect-TS/effect / handler

Function handler

packages/platform/deno/src/DenoHttpServer.ts:123–138  ·  view source on GitHub ↗
(
        request: Request,
        info: Deno.ServeHandlerInfo<Deno.NetAddr | Deno.UnixAddr>
      )

Source from the content-addressed store, hash-verified

121 }, middleware)
122
123 function handler(
124 request: Request,
125 info: Deno.ServeHandlerInfo<Deno.NetAddr | Deno.UnixAddr>
126 ): Promise<Response> {
127 return new Promise<Response>((resolve) => {
128 const context = Context.add(
129 services,
130 ServerRequest.HttpServerRequest,
131 new DenoServerRequest(request, info.remoteAddr, resolve, removeHost(request.url), websocket)
132 )
133 const fiber = Fiber.runIn(Effect.runForkWith(context)(httpEffect), scope)
134 request.signal.addEventListener("abort", () => {
135 fiber.interruptUnsafe(parent.id, Error.ClientAbort.annotation)
136 }, { once: true })
137 })
138 }
139
140 yield* Scope.addFinalizerExit(serveScope, () => {
141 const index = handlerStack.lastIndexOf(handler)

Callers 3

runFunction · 0.70
onMessageFunction · 0.70
getFunction · 0.50

Calls 4

interruptUnsafeMethod · 0.80
removeHostFunction · 0.70
addMethod · 0.65
addEventListenerMethod · 0.65

Tested by 1

getFunction · 0.40