String::Tagged allows to attach data to (arbitrary parts of a) string, the objects "behave like strings". This is a bit of over-engineering if you need to attach only to the string as a whole, but alas, it's already existing!
Comment on Re: piggy back infos on a string scalar