pstore2
errno_exception.hpp
Go to the documentation of this file.
1 //===- include/pstore/core/errno_exception.hpp ------------*- mode: C++ -*-===//
2 //* _ _ *
3 //* ___ _ __ _ __ _ __ ___ _____ _____ ___ _ __ | |_(_) ___ _ __ *
4 //* / _ \ '__| '__| '_ \ / _ \ / _ \ \/ / __/ _ \ '_ \| __| |/ _ \| '_ \ *
5 //* | __/ | | | | | | | (_) | | __/> < (_| __/ |_) | |_| | (_) | | | | *
6 //* \___|_| |_| |_| |_|\___/ \___/_/\_\___\___| .__/ \__|_|\___/|_| |_| *
7 //* |_| *
8 //===----------------------------------------------------------------------===//
9 //
10 // Part of the pstore project, under the Apache License v2.0 with LLVM Exceptions.
11 // See https://github.com/SNSystems/pstore/blob/master/LICENSE.txt for license
12 // information.
13 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
14 //
15 //===----------------------------------------------------------------------===//
19 
20 #ifndef PSTORE_CORE_ERRNO_EXCEPTION_HPP
21 #define PSTORE_CORE_ERRNO_EXCEPTION_HPP
22 
23 #include <exception>
24 #include <string>
25 #include <system_error>
26 
27 namespace pstore {
30  class errno_exception final : public std::system_error {
31  public:
32  errno_exception (int errcode, char const * message);
33  errno_exception (int errcode, std::string const & message);
34 
35  errno_exception (errno_exception const &) = default;
36  errno_exception (errno_exception &&) = default;
37  errno_exception & operator= (errno_exception const &) = default;
38  errno_exception & operator= (errno_exception &&) = default;
39 
40  ~errno_exception () override;
41  };
42 } // namespace pstore
43 #endif // PSTORE_CORE_ERRNO_EXCEPTION_HPP
Definition: nonpod2.cpp:40
Provides a wrapper for std::system error which provides additional context for the associated error m...
Definition: errno_exception.hpp:30