Is it correct to say that the "string to byte array" and "byte array to string" simply change how we choose to view the data (no data or structure change) and as such there is extremely low (no?) overhead with these functions? I would hope the compiler can do it that way.. (I have wondered this many times, but never could be bother to benchmark or ask before..)
If that is the case (very low/no overhead) then I don't see much point in making that functionality a new palette item, but on the other hand it would be a very easy thing for NI to do..
My point in suggesting the obvious was that there is very little code to write to get the desired functionality. Personally, I never had to rotate a string, but I would suspect that this is a pretty rare need.
As far as what the function does, I can only guess, but strictly speaking, in other languages, a string is not JUST a byte array (see for instance this discussion). However, to confuse things a bit, if you look at the allocated buffers in the code below:
there does not seem to be any buffer allocated specifically for the string to U8 operation; you get the same buffer allocation in this situations:
and there is certainly none in the reverse operation:
This being said, even if there was data copy, these are only strings... so unless you want to rotate the Encyclopedia Britannica (and even then!), I really wouldn't worry about overhead issues...