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

Function extractSingleParams

packages/effect/src/unstable/cli/Param.ts:2160–2173  ·  view source on GitHub ↗
(
  param: Param<Kind, A>
)

Source from the content-addressed store, hash-verified

2158 * @internal
2159 */
2160export const extractSingleParams = <Kind extends ParamKind, A>(
2161 param: Param<Kind, A>
2162): Array<Single<Kind, unknown>> => {
2163 return matchParam(param, {
2164 Single: (single) => [single as Single<Kind, unknown>],
2165 Map: (mapped) => extractSingleParams(mapped.param),
2166 Transform: (mapped) => [
2167 ...extractSingleParams(mapped.param),
2168 ...mapped.alternatives.flatMap((alternative) => extractSingleParams(alternative()))
2169 ],
2170 Optional: (optional) => extractSingleParams(optional.param),
2171 Variadic: (variadic) => extractSingleParams(variadic.param)
2172 })
2173}
2174
2175/**
2176 * Gets the underlying Single param from a potentially nested param structure.

Callers 1

Calls 1

matchParamFunction · 0.85

Tested by

no test coverage detected