aboutsummaryrefslogtreecommitdiffstats
path: root/src/util/Domain.hxx
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2013-08-10 18:02:44 +0200
committerMax Kellermann <max@duempel.org>2013-09-04 18:14:22 +0200
commit29030b54c98b0aee65fbc10ebf7ba36bed98c02c (patch)
tree79766830b55ebca38ddbce84d8d548227eedb69e /src/util/Domain.hxx
parentc9fcc7f14860777458153eb2d13c773ccfa1daa2 (diff)
downloadmpd-29030b54c98b0aee65fbc10ebf7ba36bed98c02c.tar.gz
mpd-29030b54c98b0aee65fbc10ebf7ba36bed98c02c.tar.xz
mpd-29030b54c98b0aee65fbc10ebf7ba36bed98c02c.zip
util/Error: new error passing library
Replaces GLib's GError.
Diffstat (limited to '')
-rw-r--r--src/util/Domain.hxx (renamed from src/io_error.h)49
1 files changed, 22 insertions, 27 deletions
diff --git a/src/io_error.h b/src/util/Domain.hxx
index 1442a08aa..bbdbf8371 100644
--- a/src/io_error.h
+++ b/src/util/Domain.hxx
@@ -17,35 +17,30 @@
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
-#ifndef MPD_IO_ERROR_H
-#define MPD_IO_ERROR_H
+#ifndef MPD_DOMAIN_HXX
+#define MPD_DOMAIN_HXX
-#include <glib.h>
+class Domain {
+ const char *const name;
-#include <errno.h>
+public:
+ constexpr explicit Domain(const char *_name)
+ :name(_name) {}
-/**
- * A GQuark for GError for I/O errors. The code is an errno value.
- */
-gcc_const
-static inline GQuark
-errno_quark(void)
-{
- return g_quark_from_static_string("errno");
-}
-
-static inline void
-set_error_errno(GError **error_r)
-{
- g_set_error_literal(error_r, errno_quark(), errno,
- g_strerror(errno));
-}
-
-static inline GError *
-new_error_errno(void)
-{
- return g_error_new_literal(errno_quark(), errno,
- g_strerror(errno));
-}
+ Domain(const Domain &) = delete;
+ Domain &operator=(const Domain &) = delete;
+
+ constexpr const char *GetName() const {
+ return name;
+ }
+
+ bool operator==(const Domain &other) const {
+ return this == &other;
+ }
+
+ bool operator!=(const Domain &other) const {
+ return !(*this == other);
+ }
+};
#endif