Reading doco:
“3.2 Types” wrote:
… Internally there are two intrinsic string states. The first is for constant strings. For example, s=“astring”, will create an intrinsic constant string. But once a string is used in an expression, it becomes an “roString”. For example: s=s+“more”, results in s becoming an “roString”.
That does not seem to be the case though:
BrightScript Debugger> s="astring"
BrightScript Debugger> ? type(s)
String
BrightScript Debugger> s=s+"more"
BrightScript Debugger> ? type(s)
String
The result was String again. Yet roString exists:
BrightScript Debugger> ss = createobject("roString")
BrightScript Debugger> ? type(ss)
roString
BrightScript Debugger> ss.setString(s)
BrightScript Debugger> ? ss
astringmore
BrightScript Debugger> ? type(ss)
roString
Is documentation wrong? What’s the relation between the two?
