<S extends Schema.Constraint>(schema: S): (
input: S["~type.make.in"],
options?: Schema.MakeOptions
) => Effect.Effect<S["Type"], SchemaIssue.Issue>Creates an effectful maker for the schema's decoded type side.
When to use
Use to construct decoded schema values in Effect while preserving
construction failures as SchemaIssue.Issue values in the error channel.
Details
The returned function accepts constructor input, applies constructor defaults,
runs type-side validation unless checks are disabled, and fails with a
SchemaIssue.Issue when construction fails.
export function function makeEffect<
S extends Schema.Constraint
>(
schema: S
): (
input: S["~type.make.in"],
options?: Schema.MakeOptions
) => Effect.Effect<S["Type"], SchemaIssue.Issue>
Creates an effectful maker for the schema's decoded type side.
When to use
Use to construct decoded schema values in Effect while preserving
construction failures as SchemaIssue.Issue values in the error channel.
Details
The returned function accepts constructor input, applies constructor defaults,
runs type-side validation unless checks are disabled, and fails with a
SchemaIssue.Issue when construction fails.
makeEffect<function (type parameter) S in makeEffect<S extends Schema.Constraint>(schema: S): (input: S["~type.make.in"], options?: Schema.MakeOptions) => Effect.Effect<S["Type"], SchemaIssue.Issue>S extends import SchemaSchema.type Schema.Constraint = /*unresolved*/ anyConstraint>(schema: S extends Schema.Constraintschema: function (type parameter) S in makeEffect<S extends Schema.Constraint>(schema: S): (input: S["~type.make.in"], options?: Schema.MakeOptions) => Effect.Effect<S["Type"], SchemaIssue.Issue>S) {
const const ast: SchemaAST.ASTast = const recurDefaults: anyrecurDefaults(import SchemaASTSchemaAST.toType(schema: S extends Schema.Constraintschema.ast))
const const parser: (
input: unknown,
options?: SchemaAST.ParseOptions
) => Effect.Effect<
S["Type"],
SchemaIssue.Issue,
never
>
parser = function run<T, R>(
ast: SchemaAST.AST
): (
input: unknown,
options?: SchemaAST.ParseOptions
) => Effect.Effect<T, SchemaIssue.Issue, R>
run<function (type parameter) S in makeEffect<S extends Schema.Constraint>(schema: S): (input: S["~type.make.in"], options?: Schema.MakeOptions) => Effect.Effect<S["Type"], SchemaIssue.Issue>S["Type"], never>(const ast: SchemaAST.ASTast)
return (input: S["~type.make.in"]input: function (type parameter) S in makeEffect<S extends Schema.Constraint>(schema: S): (input: S["~type.make.in"], options?: Schema.MakeOptions) => Effect.Effect<S["Type"], SchemaIssue.Issue>S["~type.make.in"], options: Schema.MakeOptionsoptions?: import SchemaSchema.type Schema.MakeOptions = /*unresolved*/ anyMakeOptions): import EffectEffect.type Effect.Effect = /*unresolved*/ anyEffect<function (type parameter) S in makeEffect<S extends Schema.Constraint>(schema: S): (input: S["~type.make.in"], options?: Schema.MakeOptions) => Effect.Effect<S["Type"], SchemaIssue.Issue>S["Type"], import SchemaIssueSchemaIssue.type SchemaIssue.Issue = /*unresolved*/ anyIssue> => {
return const parser: (
input: unknown,
options?: SchemaAST.ParseOptions
) => Effect.Effect<
S["Type"],
SchemaIssue.Issue,
never
>
parser(
input: S["~type.make.in"]input,
options: Schema.MakeOptionsoptions?.disableChecks
? options: Schema.MakeOptions(parameter) options: {
parseOptions: SchemaAST.ParseOptions | undefined;
disableChecks: boolean | undefined;
}
options?.parseOptions ? { ...options: Schema.MakeOptions(parameter) options: {
parseOptions: SchemaAST.ParseOptions | undefined;
disableChecks: boolean | undefined;
}
options.parseOptions, disableChecks: booleandisableChecks: true } : { disableChecks: booleandisableChecks: true }
: options: Schema.MakeOptionsoptions?.parseOptions
)
}
}