Nocturnally Psychologizing Millipede

npm

Need private packages and team management tools?Check out npm Orgs. »

flatry

1.0.12 • Public • Published

Flatry

Build Status codecov GitHub license

Flatry (flat try) converting promise or function to flat array response with [err, result].

Inspired by golang style error handling without try/catch.

 

Install

npm install flatry
# or 
yarn add flatry

 

Use

import flatry from 'flatry';
// or
const flatry = require('flatry');

 

Examples

Flatry example

 

Asynchronous (async/await)

// Before
async asyncData({ app, error }) {
  try {
    const categories = (await app.$axios.$get('forum')).sections;
    return { categories };
  } catch (err) {
    return error({ statusCode: err.statusCode });
  }
}
 
 
// After
async asyncData({ app, error }) {
  const [err, res] = await flatry(app.$axios.$get('forum'));
  if (err) return error({ statusCode: err.statusCode });
  return { categories: res.sections };
}

Synchronous

// Before
let result = false;
try {
    result = mayThrowErrorSomeday()
} catch (error) {
    console.log('Error catched', error)
}
console.log('result', result);
 
 
// After
const [err, result] = flatry(mayThrowErrorSomeday);
if (err) console.log('Error catched', err)
console.log('result', result);

install

npm i flatry

Downloadsweekly downloads

25

version

1.0.12

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability