mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-06 23:32:27 +00:00
Use an enum class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210620 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
f68129838b
commit
c3c6d5fcb8
@ -24,7 +24,7 @@ public:
|
|||||||
const char *_obj2yaml_error_category::name() const { return "obj2yaml"; }
|
const char *_obj2yaml_error_category::name() const { return "obj2yaml"; }
|
||||||
|
|
||||||
std::string _obj2yaml_error_category::message(int ev) const {
|
std::string _obj2yaml_error_category::message(int ev) const {
|
||||||
switch (ev) {
|
switch (static_cast<obj2yaml_error>(ev)) {
|
||||||
case obj2yaml_error::success:
|
case obj2yaml_error::success:
|
||||||
return "Success";
|
return "Success";
|
||||||
case obj2yaml_error::file_not_found:
|
case obj2yaml_error::file_not_found:
|
||||||
@ -33,15 +33,14 @@ std::string _obj2yaml_error_category::message(int ev) const {
|
|||||||
return "Unrecognized file type.";
|
return "Unrecognized file type.";
|
||||||
case obj2yaml_error::unsupported_obj_file_format:
|
case obj2yaml_error::unsupported_obj_file_format:
|
||||||
return "Unsupported object file format.";
|
return "Unsupported object file format.";
|
||||||
default:
|
}
|
||||||
llvm_unreachable("An enumerator of obj2yaml_error does not have a message "
|
llvm_unreachable("An enumerator of obj2yaml_error does not have a message "
|
||||||
"defined.");
|
"defined.");
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
error_condition
|
error_condition
|
||||||
_obj2yaml_error_category::default_error_condition(int ev) const {
|
_obj2yaml_error_category::default_error_condition(int ev) const {
|
||||||
if (ev == obj2yaml_error::success)
|
if (static_cast<obj2yaml_error>(ev) == obj2yaml_error::success)
|
||||||
return error_condition();
|
return error_condition();
|
||||||
return errc::invalid_argument;
|
return errc::invalid_argument;
|
||||||
}
|
}
|
||||||
|
@ -16,18 +16,11 @@ namespace llvm {
|
|||||||
|
|
||||||
const error_category &obj2yaml_category();
|
const error_category &obj2yaml_category();
|
||||||
|
|
||||||
struct obj2yaml_error {
|
enum class obj2yaml_error {
|
||||||
enum _ {
|
|
||||||
success = 0,
|
success = 0,
|
||||||
file_not_found,
|
file_not_found,
|
||||||
unrecognized_file_format,
|
unrecognized_file_format,
|
||||||
unsupported_obj_file_format
|
unsupported_obj_file_format
|
||||||
};
|
|
||||||
_ v_;
|
|
||||||
|
|
||||||
obj2yaml_error(_ v) : v_(v) {}
|
|
||||||
explicit obj2yaml_error(int v) : v_(_(v)) {}
|
|
||||||
operator int() const {return v_;}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
inline error_code make_error_code(obj2yaml_error e) {
|
inline error_code make_error_code(obj2yaml_error e) {
|
||||||
@ -35,7 +28,6 @@ inline error_code make_error_code(obj2yaml_error e) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
template <> struct is_error_code_enum<obj2yaml_error> : std::true_type { };
|
template <> struct is_error_code_enum<obj2yaml_error> : std::true_type { };
|
||||||
template <> struct is_error_code_enum<obj2yaml_error::_> : std::true_type { };
|
|
||||||
|
|
||||||
} // namespace llvm
|
} // namespace llvm
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user