Legacy Unicode string types
Clone or download
stevengj Merge pull request #31 from carlobaldassi/fix07b
Fix a last-minute julia 0.7 deprecation warning
Latest commit e8fb929 Aug 10, 2018

README.md

LegacyStrings

Travis CI Build Status AppVeyor Build Status

Julia 0.5 Status Julia 0.6 Status Julia 0.7 Status

The LegacyStrings package provides compatibility string types from Julia 0.5 (and earlier), which were removed in subsequent versions, including:

  • ASCIIString: a single-byte-per character string type that can only hold ASCII string data.
  • UTF8String: a string type with single byte code units (UInt8), encoding strings as UTF-8.
  • UTF16String: a string type with two-byte native-endian code units (UInt16), encoding strings as UTF-16.
  • UTF32String: a string type with four-byte native-endian code units (UInt32), encoding strings as UTF-32.
  • ByteString: a type alias for Union{ASCIIString,UTF8String}, i.e. strings that can be passed to C directly.
  • WString: an alias for UTF16String if Cwchart_t is two bytes (i.e. Windows) or UTF32String otherwise.
  • RepString: a string type for efficient handling of repeated strings.

LegacyStrings also defines and exports converter functions for these types, i.e.:

  • ascii: convert to ASCIIString; since Base exports an ascii function as well, you must explicitly do import LegacyStrings: ascii or write LegacyStrings.ascii in order to use this function rather than Base.ascii.
  • utf8: convert to UTF8String.
  • utf16: convert to UTF16String.
  • utf32: convert to UTF32String.
  • wstring: alias for utf16 or utf32 according to what WString is an alias to.