All the aforementioned features:
provide a secondary string conversion, alternative to the primary
toString()-like one, that is meant to convey unambiguously a value to a programmer, instead of presenting it to the user.
In most cases they are able to produce a string that could be copied and pasted back into source code to obtain an equivalent value. When that is not possible, at least they provide more information than a generic
- strings are formatted with quotes and all escape characters needed to unambiguously represent the string
- numbers are output as a full precision literal with type suffix
- collections are output surrounded by the relevant constructor call and with all inner values represented recursively, with the same style of string representation
and so on.
From a cursory look I couldn’t find anything like that. If this is the case, I think it would be a worthwhile addition.