summaryrefslogtreecommitdiff
path: root/tiger-compiler/lib/misc/error.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'tiger-compiler/lib/misc/error.hxx')
-rw-r--r--tiger-compiler/lib/misc/error.hxx32
1 files changed, 32 insertions, 0 deletions
diff --git a/tiger-compiler/lib/misc/error.hxx b/tiger-compiler/lib/misc/error.hxx
new file mode 100644
index 0000000..ecc021f
--- /dev/null
+++ b/tiger-compiler/lib/misc/error.hxx
@@ -0,0 +1,32 @@
+/**
+ ** \file misc/error.hxx
+ ** \brief Implement template parts of misc/error.hh.
+ */
+
+#pragma once
+
+#include <misc/error.hh>
+
+namespace misc
+{
+ template <class T> error& error::operator<<(const T& t)
+ {
+ stream_ << t;
+ return *this;
+ }
+
+ // Member manipulators.
+ inline error& error::operator<<(member_manip_type f)
+ {
+ (this->*f)();
+ return *this;
+ }
+
+ // Const member manipulators.
+ inline error& error::operator<<(const_member_manip_type f)
+ {
+ (this->*f)();
+ return *this;
+ }
+
+} // namespace misc