Consider implementing `DpmShort`
Clarification and motivation
See the respective TODO in code.
When VSCode renders variables, large values cannot fit and get truncated from the end. Let's see if we can provide a smarter truncation on the adapter's side.
The aim here is to make it easier to distinguish large values like bytearrays, addresses, e.t.c, and generally focus on viable info.
Why it may be necessary:
- Secret keys, public keys, addresses, signatures have the same prefix depending on their type, so we already have less information to distinguish different values. We can consider either showing first few bytes and last several bytes, or assign aliases / numeric ids to values of each primitive type.
- For bytes it may be beneficial to first display the length.
- For lists and maps it may be better to display only the length and the first element, and the contents can be seen in the children variables.
- Large numbers should be rendered in scientific notation.
Note that the existing ability to Copy value as expression (and get a valid Michelson value) still remains in parallel.
Acceptance criteria
- We think through the shortening rules.
- We implement
DpmShort
in the code and use it for e.g. VSCode variables rendering.