messaging_error.hpp

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once


#include <felspar/exceptions/source_annotation.hpp>
#include <stdexcept>


namespace felspar::exceptions {


    template<typename E>
    class messaging_error : public source_annotation<E> {
      public:
        messaging_error(
                std::string m,
                felspar::source_location loc =
                        felspar::source_location::current())
        : source_annotation<E>{
                loc, source_annotation<E>::annotate(std::move(m), loc)} {}
    };


}