LibW.txt.templ 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. MODULE LinLibW ["libc.so%%libver%%"];
  2. (*
  3. %%osname%%
  4. %%machine%%
  5. *)
  6. IMPORT Libc := LinLibc;
  7. CONST
  8. %%defs-lc%%
  9. TYPE
  10. (* int, wchar_t, wint_t, size_t, mbstate_t *)
  11. %%defs-basictypes%%
  12. PtrWSTR* = POINTER [untagged] TO ARRAY [untagged] OF wchar_t;
  13. PROCEDURE [ccall] setlocale* (category: int; locale: Libc.PtrSTR): Libc.PtrSTR;
  14. PROCEDURE [ccall] mbsinit* (VAR [nil] ps: mbstate_t): int;
  15. PROCEDURE [ccall] wctomb* (s: Libc.PtrSTR; wchar: wchar_t): int;
  16. PROCEDURE [ccall] wcstombs* (s: Libc.PtrSTR; pwcs: PtrWSTR; n: size_t): size_t;
  17. PROCEDURE [ccall] wcrtomb* (s: Libc.PtrSTR; wc: wchar_t; VAR [nil] ps: mbstate_t): size_t;
  18. PROCEDURE [ccall] wcsrtombs* (dst: Libc.PtrSTR; VAR src: PtrWSTR; len: size_t; VAR [nil] ps: mbstate_t): size_t;
  19. PROCEDURE [ccall] wcsnrtombs* (dst: Libc.PtrSTR; VAR src: PtrWSTR; nwc: size_t; len: size_t; VAR [nil] ps: mbstate_t): size_t;
  20. PROCEDURE [ccall] mbtowc* (pwc: PtrWSTR; s: Libc.PtrSTR; n: size_t): int;
  21. PROCEDURE [ccall] mbstowcs* (pwcs: PtrWSTR; s: Libc.PtrSTR; n: size_t): size_t;
  22. PROCEDURE [ccall] mblen* (s: Libc.PtrSTR; n: size_t): int;
  23. PROCEDURE [ccall] mbrtowc* (wc: PtrWSTR; s: Libc.PtrSTR; n: size_t; VAR [nil] mbs: mbstate_t): size_t;
  24. PROCEDURE [ccall] mbsrtowcs* (dst: PtrWSTR; VAR src: Libc.PtrSTR; len: size_t; VAR [nil] ps: mbstate_t): size_t;
  25. PROCEDURE [ccall] mbsnrtowcs* (dst: PtrWSTR; VAR src: Libc.PtrSTR; nmc: size_t; len: size_t; VAR [nil] ps: mbstate_t): size_t;
  26. PROCEDURE [ccall] mbrlen* (s: Libc.PtrSTR; n: size_t; VAR [nil] ps: mbstate_t): size_t;
  27. PROCEDURE [ccall] iswalpha* (wc: wint_t): int;
  28. PROCEDURE [ccall] iswlower* (wc: wint_t): int;
  29. PROCEDURE [ccall] iswupper* (wc: wint_t): int;
  30. PROCEDURE [ccall] towlower* (wc: wint_t): wint_t;
  31. PROCEDURE [ccall] towupper* (wc: wint_t): wint_t;
  32. PROCEDURE [ccall] wprintf* (fmt: PtrWSTR): int;
  33. PROCEDURE [ccall] fputws* (ws: PtrWSTR; fp: Libc.PtrFILE): int;
  34. PROCEDURE [ccall] fgetws* (ws: PtrWSTR; n: int; fp: Libc.PtrFILE): PtrWSTR;
  35. END LinLibW.