Hyperlinkv0.8.0-beta.28

Schema

Schema.toCodecJsonfunctioneffect/Schema.ts:13449
toCodecJson<S>

Derives a canonical JSON codec from a schema. The encoded form is Json, and decoding produces the schema's Type.

Canonical Codecs
Source effect/Schema.ts:1344932 lines
export interface toCodecJson<S extends Constraint> extends
  BottomLazy<
    S["ast"],
    toCodecJson<S>,
    S["~type.parameters"],
    S["~type.mutability"],
    S["~type.optionality"],
    S["~type.constructor.default"],
    S["~encoded.mutability"],
    S["~encoded.optionality"]
  >
{
  readonly "Type": S["Type"]
  readonly "Encoded": Json
  readonly "DecodingServices": S["DecodingServices"]
  readonly "EncodingServices": S["EncodingServices"]
  readonly "~type.make.in": S["~type.make.in"]
  readonly "~type.make": S["~type.make"]
  readonly "Iso": S["Iso"]
  readonly schema: S
}

/**
 * Derives a canonical JSON codec from a schema. The encoded form is `Json`, and
 * decoding produces the schema's `Type`.
 *
 * @category Canonical Codecs
 * @since 4.0.0
 */
export function toCodecJson<S extends Constraint>(schema: S): toCodecJson<S> {
  return make(toCodecJsonTop(schema.ast), { schema })
}
Referenced by 3 symbols