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

Function asPromise

packages/effect/src/SchemaParser.ts:948–962  ·  view source on GitHub ↗
(
  parser: (input: E, options?: SchemaAST.ParseOptions) => Effect.Effect<T, SchemaIssue.Issue>
)

Source from the content-addressed store, hash-verified

946}
947
948function asPromise<T, E>(
949 parser: (input: E, options?: SchemaAST.ParseOptions) => Effect.Effect<T, SchemaIssue.Issue>
950): (input: E, options?: SchemaAST.ParseOptions) => Promise<T> {
951 return (input: E, options?: SchemaAST.ParseOptions) =>
952 Effect.runPromiseExit(parser(input, options)).then((exit) => {
953 if (Exit.isSuccess(exit)) {
954 return exit.value
955 }
956 const issue = InternalSchemaCause.getSchemaIssueOrThrow(
957 exit.cause,
958 "Promise adapter can only reject schema issues"
959 )
960 throw new Error("Schema validation failed", { cause: issue })
961 })
962}
963
964function asExit<T, E, R>(
965 parser: (input: E, options?: SchemaAST.ParseOptions) => Effect.Effect<T, SchemaIssue.Issue, R>

Callers 3

decodeUnknownPromiseFunction · 0.85
decodePromiseFunction · 0.85
encodeUnknownPromiseFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected