gstring.inc 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. {*
  2. * gstring.inc
  3. *
  4. * depends on gtypes.inc, gunicode.inc
  5. *}
  6. type
  7. PGString = ^TGString;
  8. TGString = record
  9. str : Pgchar;
  10. len : gsize;
  11. allocated_len : gsize;
  12. end;
  13. PGStringChunk = pointer; // structure not known
  14. { String Chunks
  15. }
  16. function g_string_chunk_new(size:gsize):PGStringChunk;cdecl;external gliblib name 'g_string_chunk_new';
  17. procedure g_string_chunk_free(chunk:PGStringChunk);cdecl;external gliblib name 'g_string_chunk_free';
  18. function g_string_chunk_insert(chunk:PGStringChunk; _string:Pgchar):Pgchar;cdecl;external gliblib name 'g_string_chunk_insert';
  19. function g_string_chunk_insert_const(chunk:PGStringChunk; _string:Pgchar):Pgchar;cdecl;external gliblib name 'g_string_chunk_insert_const';
  20. { Strings
  21. }
  22. function g_string_new(init:Pgchar):PGString;cdecl;external gliblib name 'g_string_new';
  23. function g_string_new_len(init:Pgchar; len:gssize):PGString;cdecl;external gliblib name 'g_string_new_len';
  24. function g_string_sized_new(dfl_size:gsize):PGString;cdecl;external gliblib name 'g_string_sized_new';
  25. function g_string_free(_string:PGString; free_segment:gboolean):Pgchar;cdecl;external gliblib name 'g_string_free';
  26. function g_string_equal(v:PGString; v2:PGString):gboolean;cdecl;external gliblib name 'g_string_equal';
  27. function g_string_hash(str:PGString):guint;cdecl;external gliblib name 'g_string_hash';
  28. function g_string_assign(_string:PGString; rval:Pgchar):PGString;cdecl;external gliblib name 'g_string_assign';
  29. function g_string_truncate(_string:PGString; len:gsize):PGString;cdecl;external gliblib name 'g_string_truncate';
  30. function g_string_set_size(_string:PGString; len:gsize):PGString;cdecl;external gliblib name 'g_string_set_size';
  31. function g_string_insert_len(_string:PGString; pos:gssize; val:Pgchar; len:gssize):PGString;cdecl;external gliblib name 'g_string_insert_len';
  32. function g_string_append(_string:PGString; val:Pgchar):PGString;cdecl;external gliblib name 'g_string_append';
  33. function g_string_append_len(_string:PGString; val:Pgchar; len:gssize):PGString;cdecl;external gliblib name 'g_string_append_len';
  34. function g_string_append_c(_string:PGString; c:gchar):PGString;cdecl;external gliblib name 'g_string_append_c';
  35. function g_string_append_unichar(_string:PGString; wc:gunichar):PGString;cdecl;external gliblib name 'g_string_append_unichar';
  36. function g_string_prepend(_string:PGString; val:Pgchar):PGString;cdecl;external gliblib name 'g_string_prepend';
  37. function g_string_prepend_c(_string:PGString; c:gchar):PGString;cdecl;external gliblib name 'g_string_prepend_c';
  38. function g_string_prepend_unichar(_string:PGString; wc:gunichar):PGString;cdecl;external gliblib name 'g_string_prepend_unichar';
  39. function g_string_prepend_len(_string:PGString; val:Pgchar; len:gssize):PGString;cdecl;external gliblib name 'g_string_prepend_len';
  40. function g_string_insert(_string:PGString; pos:gssize; val:Pgchar):PGString;cdecl;external gliblib name 'g_string_insert';
  41. function g_string_insert_c(_string:PGString; pos:gssize; c:gchar):PGString;cdecl;external gliblib name 'g_string_insert_c';
  42. function g_string_insert_unichar(_string:PGString; pos:gssize; wc:gunichar):PGString;cdecl;external gliblib name 'g_string_insert_unichar';
  43. function g_string_erase(_string:PGString; pos:gssize; len:gssize):PGString;cdecl;external gliblib name 'g_string_erase';
  44. function g_string_ascii_down(_string:PGString):PGString;cdecl;external gliblib name 'g_string_ascii_down';
  45. function g_string_ascii_up(_string:PGString):PGString;cdecl;external gliblib name 'g_string_ascii_up';
  46. {$IFNDEF KYLIX}
  47. procedure g_string_printf(_string:PGString; format:Pgchar; args:array of const);cdecl;overload;external gliblib name 'g_string_printf';
  48. procedure g_string_printf(_string:PGString; format:Pgchar);cdecl;overload;external gliblib name 'g_string_printf';
  49. procedure g_string_append_printf(_string:PGString; format:Pgchar; args:array of const);cdecl;overload;external gliblib name 'g_string_append_printf';
  50. procedure g_string_append_printf(_string:PGString; format:Pgchar);cdecl;overload;external gliblib name 'g_string_append_printf';
  51. {$ELSE}
  52. procedure g_string_printf(_string:PGString; format:Pgchar);varargs;cdecl;external gliblib name 'g_string_printf';
  53. procedure g_string_append_printf(_string:PGString; format:Pgchar);varargs;cdecl;external gliblib name 'g_string_append_printf';
  54. {$ENDIF}
  55. {DEPRECATED functions}
  56. { The following two functions are deprecated and will be removed in
  57. the next major release. They use the locale-specific tolower and
  58. toupper, which is almost never the right thing.
  59. }
  60. function g_string_down(_string:PGString):PGString;cdecl;external gliblib name 'g_string_down';
  61. function g_string_up(_string:PGString):PGString;cdecl;external gliblib name 'g_string_up';
  62. { These aliases are included for compatibility. }
  63. // #define g_string_sprintf g_string_printf;
  64. // #define g_string_sprintfa g_string_append_printf;