--- /dev/null
+#include <cstring>
+#include <msp/core/hash.h>
+#include "tag.h"
+
+namespace Msp {
+namespace GL {
+
+Tag::Tag(const char *s):
+ id((s && *s) ? hash32(s, strlen(s)) : 0)
+{ }
+
+Tag::Tag(const std::string &s):
+ id(s.empty() ? 0 : hash32(s))
+{ }
+
+} // namespace GL
+} // namespace Msp