Code Review: Encodingsa1

tfpt review “/shelveset:EncodingsA1;REDMOND\tomat”
Comment :
Implements IsAscii() on MutableString - the bit is calculated along
with hashcode and invalidated each time a mutable operation is
performed.
Enables combination of mutable strings with different
encodings/KCoding. If a string is k-coded it should be treated as byte
array for all operations since 1.8 doesn’t tag the strings with
encodings. Hence any k-coded strings can be combined regardless of their
actual encodings. 1.9-encoded strings must have the same encoding or one
of them must have all characters in range 0…127 (IsAscii == true) - MRI
1.9 allows combination of such strings.

Fixes:

Tomas