All Projects → tailhook → Quick Error

tailhook / Quick Error

Licence: other
A rust-macro which makes errors easy to write

Programming Languages

rust
11053 projects
macro
33 projects

Projects that are alternatives of or similar to Quick Error

Ignition Contracts
The contracts used to display solutions on Ignition and Flare
Stars: ✭ 372 (+29.62%)
Mutual labels:  reporting, error
Flare Client Php
Send PHP errors to Flare
Stars: ✭ 351 (+22.3%)
Mutual labels:  reporting, error
allure-rspec
Deprecated, use https://github.com/allure-framework/allure-ruby instead
Stars: ✭ 30 (-89.55%)
Mutual labels:  reporting
eloquent-ffmpeg
High-level API for FFmpeg's Command Line Tools
Stars: ✭ 71 (-75.26%)
Mutual labels:  conversion
ignition-code-editor
Add inline code editing to your ignition page
Stars: ✭ 44 (-84.67%)
Mutual labels:  error
TemplaterExamples
Creating reports in .NET and Java
Stars: ✭ 37 (-87.11%)
Mutual labels:  reporting
formulize
Unified data management. One system to handle all data entry, collection, and reporting, across all your unique workflows. Simplify processes. Make people happy.
Stars: ✭ 21 (-92.68%)
Mutual labels:  reporting
performance-dashboard
Performance Dashboard for Australian Government https://dashboard.gov.au
Stars: ✭ 12 (-95.82%)
Mutual labels:  reporting
Henkan
A small library for converting between case classes.
Stars: ✭ 262 (-8.71%)
Mutual labels:  conversion
tellery
Tellery lets you build metrics using SQL and bring them to your team. As easy as using a document. As powerful as a data modeling tool.
Stars: ✭ 219 (-23.69%)
Mutual labels:  reporting
fault
Functional errors with formatted output
Stars: ✭ 16 (-94.43%)
Mutual labels:  error
Ad-Hoc-Report-Builder-.net-mvc
Open Source Reporting tool for .NET6/.NET Core/.NET Framework that you can embed in your application and generate dashboards and ad hoc reports
Stars: ✭ 43 (-85.02%)
Mutual labels:  reporting
sublime-atomizr
Convert Sublime Text completions into Atom (or Visual Studio Code) snippets, and vice versa.
Stars: ✭ 12 (-95.82%)
Mutual labels:  conversion
rocksmithconvert
Simple standalone OSX app to convert Rocksmith 2014 .psarc (CDLC) files between PC and MAC.
Stars: ✭ 45 (-84.32%)
Mutual labels:  conversion
php-unit-conversion
A library providing full PSR-4 compatible unit conversions
Stars: ✭ 47 (-83.62%)
Mutual labels:  conversion
try-catch
Experimental alternative to a try/catch block in JavaScript
Stars: ✭ 31 (-89.2%)
Mutual labels:  error
state inspector
State change & method call logger. A debugging tool for instance variables and method calls.
Stars: ✭ 24 (-91.64%)
Mutual labels:  reporting
ignition-tinker-tab
An Ignition tab to tinker with your Laravel app
Stars: ✭ 30 (-89.55%)
Mutual labels:  error
gradle-console-reporter
Gradle plugin to report various kinds of summaries to console.
Stars: ✭ 49 (-82.93%)
Mutual labels:  reporting
Thinreports Generator
Report Generator for Ruby
Stars: ✭ 268 (-6.62%)
Mutual labels:  reporting

=========== Quick Error

:Status: production-ready :Documentation: https://docs.rs/quick-error/

A macro which makes error types pleasant to write.

Features:

  • Define enum type with arbitrary parameters
  • Concise notation of Display and Error traits
  • Full control of Display and Error trait implementation
  • Any number of From traits
  • Support for all enum-variants Unit, Tuple and Struct

Here is the comprehensive example:

.. code-block:: rust

quick_error! {
    #[derive(Debug)]
    pub enum IoWrapper {
        Io(err: io::Error) {
            from()
            display("I/O error: {}", err)
            source(err)
        }
        Other(descr: &'static str) {
            display("Error {}", descr)
        }
        IoAt { place: &'static str, err: io::Error } {
            source(err)
            display(me) -> ("io error at {}: {}", place, err)
            from(s: String) -> {
                place: "some string",
                err: io::Error::new(io::ErrorKind::Other, s)
            }
        }
        Discard {
            from(&'static str)
        }
    }
}

======= License

Licensed under either of

at your option.


Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].