Skip to main content Link Search Menu Expand Document (external link)

Serializable overview

Added in v1.0.0

Serializable represents an object that has self-contained Schema(s)


Table of contents


accessor

exitSchema

Signature

export declare const exitSchema: <A, I, E, EI, R>(
  self: WithResult<A, I, E, EI, R>
) => Schema.Schema<Exit.Exit<A, E>, Schema.ExitEncoded<I, EI>, R>

Added in v1.0.0

failureSchema

Signature

export declare const failureSchema: <A, I, E, EI, R>(self: WithResult<A, I, E, EI, R>) => Schema.Schema<E, EI, R>

Added in v1.0.0

selfSchema

Signature

export declare const selfSchema: <A, I, R>(self: Serializable<A, I, R>) => Schema.Schema<A, I, R>

Added in v1.0.0

successSchema

Signature

export declare const successSchema: <A, I, E, EI, R>(self: WithResult<A, I, E, EI, R>) => Schema.Schema<A, I, R>

Added in v1.0.0

decoding

deserialize

Signature

export declare const deserialize: {
  (value: unknown): <A, I, R>(self: Serializable<A, I, R>) => Effect.Effect<A, ParseResult.ParseError, R>
  <A, I, R>(self: Serializable<A, I, R>, value: unknown): Effect.Effect<A, ParseResult.ParseError, R>
}

Added in v1.0.0

deserializeExit

Signature

export declare const deserializeExit: {
  (
    value: unknown
  ): <A, I, E, EI, R>(self: WithResult<A, I, E, EI, R>) => Effect.Effect<Exit.Exit<A, E>, ParseResult.ParseError, R>
  <A, I, E, EI, R>(
    self: WithResult<A, I, E, EI, R>,
    value: unknown
  ): Effect.Effect<Exit.Exit<A, E>, ParseResult.ParseError, R>
}

Added in v1.0.0

deserializeFailure

Signature

export declare const deserializeFailure: {
  (value: unknown): <A, I, E, EI, R>(self: WithResult<A, I, E, EI, R>) => Effect.Effect<E, ParseResult.ParseError, R>
  <A, I, E, EI, R>(self: WithResult<A, I, E, EI, R>, value: unknown): Effect.Effect<E, ParseResult.ParseError, R>
}

Added in v1.0.0

deserializeSuccess

Signature

export declare const deserializeSuccess: {
  (value: unknown): <A, I, E, EI, R>(self: WithResult<A, I, E, EI, R>) => Effect.Effect<A, ParseResult.ParseError, R>
  <A, I, E, EI, R>(self: WithResult<A, I, E, EI, R>, value: unknown): Effect.Effect<A, ParseResult.ParseError, R>
}

Added in v1.0.0

encoding

serialize

Signature

export declare const serialize: <A, I, R>(self: Serializable<A, I, R>) => Effect.Effect<I, ParseResult.ParseError, R>

Added in v1.0.0

serializeExit

Signature

export declare const serializeExit: {
  <A, E>(
    value: Exit.Exit<A, E>
  ): <I, EI, R>(self: WithResult<A, I, E, EI, R>) => Effect.Effect<Schema.ExitEncoded<I, EI>, ParseResult.ParseError, R>
  <A, I, E, EI, R>(
    self: WithResult<A, I, E, EI, R>,
    value: Exit.Exit<A, E>
  ): Effect.Effect<Schema.ExitEncoded<I, EI>, ParseResult.ParseError, R>
}

Added in v1.0.0

serializeFailure

Signature

export declare const serializeFailure: {
  <E>(value: E): <A, I, EI, R>(self: WithResult<A, I, E, EI, R>) => Effect.Effect<EI, ParseResult.ParseError, R>
  <A, I, E, EI, R>(self: WithResult<A, I, E, EI, R>, value: E): Effect.Effect<EI, ParseResult.ParseError, R>
}

Added in v1.0.0

serializeSuccess

Signature

export declare const serializeSuccess: {
  <A>(value: A): <I, E, EI, R>(self: WithResult<A, I, E, EI, R>) => Effect.Effect<I, ParseResult.ParseError, R>
  <A, I, E, EI, R>(self: WithResult<A, I, E, EI, R>, value: A): Effect.Effect<I, ParseResult.ParseError, R>
}

Added in v1.0.0

model

Serializable (interface)

Signature

export interface Serializable<A, I, R> {
  readonly [symbol]: Schema.Schema<A, I, R>
}

Added in v1.0.0

Serializable (namespace)

Added in v1.0.0

Context (type alias)

Signature

export type Context<T> = T extends Serializable<infer _A, infer _I, infer R> ? R : never

Added in v1.0.0

SerializableWithResult (interface)

Signature

export interface SerializableWithResult<S, SI, SR, A, AI, E, EI, RR>
  extends Serializable<S, SI, SR>,
    WithResult<A, AI, E, EI, RR> {}

Added in v1.0.0

SerializableWithResult (namespace)

Added in v1.0.0

Context (type alias)

Signature

export type Context<T> =
  T extends SerializableWithResult<infer _S, infer _SI, infer SR, infer _A, infer _AI, infer _E, infer _EI, infer RR>
    ? SR | RR
    : never

Added in v1.0.0

WithResult (interface)

Signature

export interface WithResult<A, I, E, EI, R> {
  readonly [symbolResult]: {
    readonly Success: Schema.Schema<A, I, R>
    readonly Failure: Schema.Schema<E, EI, R>
  }
}

Added in v1.0.0

WithResult (namespace)

Added in v1.0.0

Context (type alias)

Signature

export type Context<T> = T extends WithResult<infer _A, infer _I, infer _E, infer _EI, infer R> ? R : never

Added in v1.0.0

symbol

symbol

Signature

export declare const symbol: typeof symbol

Added in v1.0.0

symbolResult

Signature

export declare const symbolResult: typeof symbolResult

Added in v1.0.0