From 69e14e12f1c6adec1a3db15d53070d5608fc2e14 Mon Sep 17 00:00:00 2001 From: jarvisjiang Date: Wed, 8 May 2024 15:01:50 +0000 Subject: [PATCH] Some value as NonNullable --- src/enum/option.ts | 12 ++++++------ src/enum/result.ts | 12 +++++------- 2 files changed, 11 insertions(+), 13 deletions(-) diff --git a/src/enum/option.ts b/src/enum/option.ts index 79b4f9c..9c060a8 100644 --- a/src/enum/option.ts +++ b/src/enum/option.ts @@ -1,6 +1,5 @@ /** - * @fileoverview 仿rust的[Option](https://doc.rust-lang.org/core/option/index.html)枚举, - * 用于替代null和undefined的使用。 + * @fileoverview A Rust-inspired [Option](https://doc.rust-lang.org/core/option/index.html) enum, used as an alternative to the use of null and undefined. */ /** @@ -29,7 +28,7 @@ interface None { export type Option = Some | None; /** - * 创建一个`Some`对象 + * Create a `Some` object. * * # Examples * @@ -38,10 +37,10 @@ export type Option = Some | None; * console.assert(v.unwrap() === 10); * ``` * - * @param value 被包裹的值,不能为null和undefined + * @param value The wrapped value which can not be null or undefined. * @returns {Some} */ -export function Some(value: T): Option { +export function Some(value: NonNullable): Option { if (value == null) { throw new TypeError('Some value can not be null or undefined'); } @@ -55,7 +54,8 @@ export function Some(value: T): Option { } /** - * `None`值是固定的 + * `None` value is freeze. + * * @constant {None} */ export const None: None = { diff --git a/src/enum/result.ts b/src/enum/result.ts index 192a4be..d277a61 100644 --- a/src/enum/result.ts +++ b/src/enum/result.ts @@ -1,9 +1,7 @@ /** - * @fileoverview 仿rust的[Result](https://doc.rust-lang.org/core/result/index.html)枚举, - * 用于错误处理。 + * @fileoverview A Rust-inspired [Result](https://doc.rust-lang.org/core/result/index.html) enum, used for better error handling. */ - /** * result::Ok type */ @@ -32,7 +30,7 @@ interface Err { export type Result = Ok | Err; /** - * 创建一个`Ok`对象 + * Create an `Ok` object. * * # Examples * @@ -65,7 +63,7 @@ if (res.isNone()) { * * ``` * - * @param value 被包裹的值 + * @param value The wrapped value. * @returns {Ok} */ export function Ok(value: T): Result { @@ -81,7 +79,7 @@ export function Ok(value: T): Result { } /** - * 创建一个`Err`对象 + * Create an `Err` object. * * # Examples * @@ -90,7 +88,7 @@ export function Ok(value: T): Result { * console.assert(e.err().message === 'unknown error'); * ``` * - * @param error 被包裹的错误 + * @param error The wrapped error value. * @returns {Err} */ export function Err(error: E): Result {