string-error

Crates.iostring-error
lib.rsstring-error
version0.1.0
sourcesrc
created_at2017-10-08 21:26:25.059781
updated_at2017-10-08 21:26:25.059781
descriptionA minimal rust library to create errors out of strings.
homepage
repositoryhttps://github.com/urhein/string-error
max_upload_size
id34923
size17,236
Ulrich Rhein (urhein)

documentation

README

string-error

This crate provides a simple way to use a string as an error trait object, i.e. Box<std::error::Error>.

If you need more sophisticated error handling, you should consider error-chain, which also provides functionality to create simple errors from Strings.

Compatibility

This crate works with Stable Rust (tested with 1.20.0) and has no dependencies.

License

Written by Ulrich Rhein, licensed under the Apache License 2.0.

See COPYRIGHT and LICENSE for details.

Usage

In your Cargo.toml:

[dependencies]
string-error = "0.1.0"

In your code:

extern crate string_error;

use std::error::Error;
use string_error::{into_err, new_err, static_err};

static ERROR_MESSAGE : &'static str = "This is a constant error message";

fn use_static_err() -> Result<(), Box<Error>> {
    // creates an error from a static str
    Err(static_err(ERROR_MESSAGE))
}

fn use_new_err() -> Result<(), Box<Error>> {
    let x = String::from("Create an error from an owned string.");
    Err(new_err(&x)) // copies x
}

fn use_into_err() -> Result<(), Box<Error>> {
    let x = String::from("Create an error from an owned string.");
    Err(into_err(x)) // takes ownership of x
}
Commit count: 2

cargo fmt