UNPKG

@aurios/jason

Version:

A simple, lightweight, and embeddable JSON document database built on Bun.

125 lines (110 loc) 2.83 kB
import { Schema } from "effect"; export class WalWriteError extends Schema.TaggedError<WalWriteError>()( "WalWriteError", { reason: Schema.Union( Schema.Literal("SerializationError"), Schema.Literal("FileSystemError") ), cause: Schema.Unknown } ) {} export class WalReplayError extends Schema.TaggedError<WalReplayError>()( "WalReplayError", { reason: Schema.Union( Schema.Literal("DirectoryReadError"), Schema.Literal("FileReadError"), Schema.Literal("ParseError") ), cause: Schema.Unknown } ) {} export class WalCheckpointError extends Schema.TaggedError<WalCheckpointError>()( "WalCheckpointError", { reason: Schema.Union( Schema.Literal("DirectoryReadError"), Schema.Literal("FileRemoveError") ), cause: Schema.Unknown } ) {} export class WalInitializationError extends Schema.TaggedError<WalInitializationError>()( "WalInitializationError", { reason: Schema.Union( Schema.Literal("DirectoryCreationError"), Schema.Literal("DirectoryReadError") ), cause: Schema.Unknown } ) {} export class DatabaseError extends Schema.TaggedError<DatabaseError>()( "DatabaseError", { message: Schema.String, cause: Schema.Unknown } ) {} export class JsonFileError extends Schema.TaggedError<JsonFileError>()( "JsonFileError", { message: Schema.String, cause: Schema.Unknown } ) {} export class MetadataPersistenceError extends Schema.TaggedError<MetadataPersistenceError>()( "MetadataPersistenceError", { message: Schema.String, cause: Schema.Unknown } ) {} export class DocumentNotFoundError extends Schema.TaggedError<DocumentNotFoundError>()( "DocumentNotFoundError", { message: Schema.String, cause: Schema.Unknown } ) {} export class DeleteOperationError extends Schema.TaggedError<DeleteOperationError>()( "DeleteOperationError", { message: Schema.String, cause: Schema.Unknown } ) {} export class QueryOperationError extends Schema.TaggedError<QueryOperationError>()( "QueryOperationError", { message: Schema.String, cause: Schema.Unknown } ) {} export class JsonError extends Schema.TaggedError<JsonError>()("JsonError", { message: Schema.String, cause: Schema.Unknown }) {} export class ValidationError extends Schema.TaggedError<ValidationError>()( "ValidationError", { message: Schema.String, issues: Schema.Array(Schema.Any) } ) {} export const CoreError = Schema.Union( WalWriteError, WalReplayError, WalCheckpointError, WalInitializationError, DatabaseError, JsonFileError, MetadataPersistenceError, DocumentNotFoundError, DeleteOperationError, QueryOperationError, JsonError, ValidationError ); export type CoreError = Schema.Schema.Type<typeof CoreError>;