Implement the widestring manager with a C library based implementation

The cwstring unit offers no API by itself: it just initializes the widestring manager record of the system unit with an implementation that uses collation and conversion routines which are provided by the C library found on most Unix or Linux systems that are POSIX compliant.

The cwstring should simply be included in the uses clause of the program, preferably as one of the first units, and the initialization section of the unit will do all the work.

Note that including this unit links your program to the C library of the system.

It makes no sense to use this unit on a non-POSIX system like Windows, OS/2 or DOS. Therefor it should always be enclosed with an ifdef statement:

program myprogram; uses {$ifdef unix}cwstring,{$endif} classes, sysutils;
Set the Widestring manager of the system unit to the C version SetCWidestringManager actually sets the widestring manager record of the system unit. It is called automatically by the initialization section of the unit.