I thought it worth hoisting up to its own post (here). Perhaps I'm mistaken and such a thing already exists, but I couldn't think of any built-in way or existing crate that would allow a function to return a value, but have that value be immutable to the caller.
If the method gave away ownership of its return value, it cannot possibly care whether that value is modified later, since it cannot look at it. So why bother prohibiting it? The only immutable wrapper you need is &