must

package
v0.6.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 12, 2020 License: MIT Imports: 2 Imported by: 0

Documentation

Overview

Package 'must' provides another alternative to the 'fluent' package, providing many helpful functions for wrapping methods with multiple returns into a single return (converting errors into panics).

It's useful especially for testing code and other situations where panics are not problematic.

Unlike the 'fluent' package, panics are not of any particular type. There is no equivalent to the `fluent.Recover` feature in the 'must' package.

Because golang supports implied destructuring of multiple-return functions into arguments for another funtion of matching arity, most of the 'must' functions can used smoothly in a pointfree/chainable form, like this:

must.Node(SomeNodeBuilder{}.CreateString("a"))

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Node

func Node(n ipld.Node, e error) ipld.Node

must.Node helps write pointfree/chainable-style code by taking a Node and an error and transforming any error into a panic.

Because golang supports implied destructuring of multiple-return functions into arguments for another funtion of matching arity, it can be used like this:

must.Node(SomeNodeBuilder{}.CreateString("a"))

func TypedNode

func TypedNode(n ipld.Node, e error) typed.Node

must.TypedNode helps write pointfree/chainable-style code by taking a Node and an error and transforming any error into a panic. It will also cast the `ipld.Node` to a `typed.Node`, panicking if impossible.

Because golang supports implied destructuring of multiple-return functions into arguments for another funtion of matching arity, it can be used like this:

must.TypedNode(SomeNodeBuilder{}.CreateString("a"))

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL