-- Taken from Roact.Symbol and modified to produce exact string names -- to allow for serialization/pathing. return function (name) assert(type(name) == "string", "Symbols must be created using a string name!") local self = newproxy(true) -- Unlike Symbols in Roact, we need the exact names. getmetatable(self).__tostring = function() return name end return self end