Mercurial > hg > CbC > CbC_llvm
comparison tools/obj2yaml/Error.h @ 77:54457678186b LLVM3.6
LLVM 3.6
author | Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 08 Sep 2014 22:06:00 +0900 |
parents | |
children | 1172e4bd9c6f |
comparison
equal
deleted
inserted
replaced
34:e874dbf0ad9d | 77:54457678186b |
---|---|
1 //===- Error.h - system_error extensions for obj2yaml -----------*- C++ -*-===// | |
2 // | |
3 // The LLVM Compiler Infrastructure | |
4 // | |
5 // This file is distributed under the University of Illinois Open Source | |
6 // License. See LICENSE.TXT for details. | |
7 // | |
8 //===----------------------------------------------------------------------===// | |
9 | |
10 #ifndef LLVM_TOOLS_OBJ2YAML_ERROR_H | |
11 #define LLVM_TOOLS_OBJ2YAML_ERROR_H | |
12 | |
13 #include <system_error> | |
14 | |
15 namespace llvm { | |
16 const std::error_category &obj2yaml_category(); | |
17 | |
18 enum class obj2yaml_error { | |
19 success = 0, | |
20 file_not_found, | |
21 unrecognized_file_format, | |
22 unsupported_obj_file_format | |
23 }; | |
24 | |
25 inline std::error_code make_error_code(obj2yaml_error e) { | |
26 return std::error_code(static_cast<int>(e), obj2yaml_category()); | |
27 } | |
28 | |
29 } // namespace llvm | |
30 | |
31 namespace std { | |
32 template <> struct is_error_code_enum<llvm::obj2yaml_error> : std::true_type {}; | |
33 } | |
34 | |
35 #endif |