Socket
Socket
Sign inDemoInstall

@urbdyn/rusty-result

Package Overview
Dependencies
0
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @urbdyn/rusty-result

Typescript implementation of Rust's Result


Version published
Weekly downloads
175
increased by17400%
Maintainers
1
Install size
15.5 kB
Created
Weekly downloads
 

Readme

Source

Rusty-Result.js

npm version npm bundle size

Zero dependency Typescript implementation of Rust's Result avaible via NPM or Deno Land!

Rusty-Result aims to be a Typescript/Javascript interpretation of Result from Rust. View the generated docs for the library here.

# NPM
npm install --save '@urbdyn/rusty-result'
# Deno
echo 'export { Result } from "https://deno.land/x/rusty_result/mod.ts";' >> ./deps.ts

Example Usage

// Node.js
import { Result } from '@urbdyn/rusty-result';
// Deno
import { Result } from 'https://deno.land/x/rusty_result/mod.ts';

// Create an ok Result
const myOkResult = Result.ok(1);
// Create an error Result
const myErrorResult = Result.error(2);

// Create a function that takes Results
function myResultFunction(r: Result<number, number>): void {
  // Perform operation on ok value and get new Result
  const r2 = r.map((x) => x + 10);
  // Perform operation on ok value and on error value and get new Result
  const r3 = r.map((x) => x + 10).mapError((x) => x - 10);

  // Do action if Result is ok
  if (r3.isOk()) {
    console.log(`r3 is ok with value of: ${r3.unwrap()}`);
  }
  // Do action if Result is error
  if (r3.isError()) {
    console.log(`r3 is error with value of: ${r3.unwrapError()}`);
  }
}

// Use Result with a function
myResultFunction(myOkResult); // prints: r3 is ok with value of: 11
myResultFunction(myErrorResult); // prints: r3 is error with value of: -8

// Check docs for all supported functions for working with Result values!

Supported Environments

EnvironmentVersions
Denov1.17.0 and v1.21.1
Node.js12.22.12, 14.19.2, and 16.15.0

FAQs

Last updated on 08 May 2022

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc