cwstring.pp 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. {
  2. $Id$
  3. This file is part of the Free Pascal run time library.
  4. Copyright (c) 2005 by Florian Klaempfl,
  5. member of the Free Pascal development team.
  6. libc based wide string support
  7. See the file COPYING.FPC, included in this distribution,
  8. for details about the copyright.
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  12. **********************************************************************}
  13. {$mode objfpc}
  14. unit cwstring;
  15. interface
  16. {$linklib c} // try adding -Xf
  17. Procedure SetCWidestringManager;
  18. implementation
  19. Uses
  20. systhrds,
  21. BaseUnix,
  22. unix,
  23. unixtype;
  24. { maybe this needs to be splitted in an os depend way later }
  25. function towlower(__wc:wint_t):wint_t;cdecl;external clib name 'towlower';
  26. function towupper(__wc:wint_t):wint_t;cdecl;external clib name 'towupper';
  27. function LowerWideCase(const s : WideString) : WideString;
  28. begin
  29. end;
  30. function UpperWideCase(const s : WideString) : WideString;
  31. begin
  32. end;
  33. function CompareWideString(const s1, s2 : WideString) : PtrInt;
  34. begin
  35. end;
  36. function SameWideString(const s1, s2 : WideString) : Boolean;
  37. begin
  38. end;
  39. Var
  40. CWideStringManager : TWideStringManager;
  41. Procedure SetCWideStringManager;
  42. begin
  43. With CWideStringManager do
  44. begin
  45. end;
  46. SetWideStringManager(CWideStringManager);
  47. InitHeapMutexes;
  48. end;
  49. initialization
  50. SetCWideStringManager;
  51. finalization
  52. end.
  53. {
  54. $Log$
  55. Revision 1.1 2005-02-01 20:22:50 florian
  56. * improved widestring infrastructure manager
  57. }