fpc/rtl/objpas/sysutils/sysunih.inc
marco e41ddf221c --- Merging r41271 into '.':
U    packages/fpmake_add.inc
U    packages/fpmake_proc.inc
A    packages/libmagic
A    packages/libmagic/Makefile
A    packages/libmagic/Makefile.fpc
A    packages/libmagic/examples
A    packages/libmagic/examples/basic.pp
A    packages/libmagic/fpmake.pp
A    packages/libmagic/src
A    packages/libmagic/src/libmagic.pp
--- Recording mergeinfo for merge of r41271 into '.':
 U   .
--- Merging r41330 into '.':
U    rtl/objpas/sysutils/syssr.inc
U    rtl/objpas/sysutils/sysstr.inc
U    rtl/objpas/sysutils/sysstrh.inc
U    rtl/objpas/sysutils/sysuni.inc
U    rtl/objpas/sysutils/sysunih.inc
U    rtl/objpas/sysutils/syswide.inc
U    rtl/objpas/sysutils/syswideh.inc
--- Recording mergeinfo for merge of r41330 into '.':
 G   .
--- Merging r41336 into '.':
G    rtl/objpas/sysutils/sysstr.inc
G    rtl/objpas/sysutils/sysstrh.inc
U    rtl/win/sysutils.pp
--- Recording mergeinfo for merge of r41336 into '.':
 G   .
--- Merging r41337 into '.':
G    rtl/win/sysutils.pp
--- Recording mergeinfo for merge of r41337 into '.':
 G   .
--- Merging r41342 into '.':
U    rtl/objpas/objpas.pp
--- Recording mergeinfo for merge of r41342 into '.':
 G   .
--- Merging r41343 into '.':
U    packages/rtl-objpas/src/inc/strutils.pp
--- Recording mergeinfo for merge of r41343 into '.':
 G   .
--- Recording mergeinfo for merge of r41400 into '.':
 G   .
--- Merging r41547 into '.':
U    rtl/objpas/sysutils/sysencodingh.inc
--- Recording mergeinfo for merge of r41547 into '.':
 G   .

# revisions: 41271,41330,41336,41337,41342,41343,41400,41547
r41271 | michael | 2019-02-09 20:57:11 +0100 (Sat, 09 Feb 2019) | 1 line
Changed paths:
   M /trunk/packages/fpmake_add.inc
   M /trunk/packages/fpmake_proc.inc
   A /trunk/packages/libmagic
   A /trunk/packages/libmagic/Makefile
   A /trunk/packages/libmagic/Makefile.fpc
   A /trunk/packages/libmagic/examples
   A /trunk/packages/libmagic/examples/basic.pp
   A /trunk/packages/libmagic/fpmake.pp
   A /trunk/packages/libmagic/src
   A /trunk/packages/libmagic/src/libmagic.pp

* libmagic headers by Silvio Clecio
r41330 | michael | 2019-02-16 08:55:26 +0100 (Sat, 16 Feb 2019) | 1 line
Changed paths:
   M /trunk/rtl/objpas/sysutils/syssr.inc
   M /trunk/rtl/objpas/sysutils/sysstr.inc
   M /trunk/rtl/objpas/sysutils/sysstrh.inc
   M /trunk/rtl/objpas/sysutils/sysuni.inc
   M /trunk/rtl/objpas/sysutils/sysunih.inc
   M /trunk/rtl/objpas/sysutils/syswide.inc
   M /trunk/rtl/objpas/sysutils/syswideh.inc

* Add overloaded version of stringreplace with replacement count (ID 23987)
r41336 | michael | 2019-02-16 11:50:31 +0100 (Sat, 16 Feb 2019) | 1 line
Changed paths:
   M /trunk/rtl/objpas/sysutils/sysstr.inc
   M /trunk/rtl/objpas/sysutils/sysstrh.inc
   M /trunk/rtl/win/sysutils.pp

* Complete the implementation of IsLeadChar
r41337 | michael | 2019-02-16 11:52:51 +0100 (Sat, 16 Feb 2019) | 1 line
Changed paths:
   M /trunk/rtl/win/sysutils.pp

* Actually call InitLeadBytes
r41342 | michael | 2019-02-16 13:52:00 +0100 (Sat, 16 Feb 2019) | 1 line
Changed paths:
   M /trunk/rtl/objpas/objpas.pp

* Add overloaded version of AssignFile with codepage. See bug ID #34889
r41343 | michael | 2019-02-16 15:52:17 +0100 (Sat, 16 Feb 2019) | 1 line
Changed paths:
   M /trunk/packages/rtl-objpas/src/inc/strutils.pp

* Fix bug ID #35098 (count param)
r41400 | yury | 2019-02-20 16:11:45 +0100 (Wed, 20 Feb 2019) | 1 line
Changed paths:
   M /trunk/rtl/android/sysandroid.inc
   M /trunk/rtl/linux/system.pp

* android: Fixed stdio redirection for threads.
r41547 | michael | 2019-03-02 11:42:19 +0100 (Sat, 02 Mar 2019) | 1 line
Changed paths:
   M /trunk/rtl/objpas/sysutils/sysencodingh.inc

* Make FreeEncodings protected: they cannot be public, as it causes AVs (see bug ID #34856)

git-svn-id: branches/fixes_3_2@41933 -
2019-04-25 12:40:02 +00:00

73 lines
4.0 KiB
PHP

{
*********************************************************************
Copyright (C) 2002 by Florian Klaempfl
See the file COPYING.FPC, included in this distribution,
for details about the copyright.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
*********************************************************************
}
type
TUnicodeCharArray = array of UnicodeChar;
function Trim(const S: unicodestring): unicodestring;
function TrimLeft(const S: unicodestring): unicodestring;
function TrimRight(const S: unicodestring): unicodestring;
function UpperCase(const s: UnicodeString): UnicodeString; overload;
function LowerCase(const s: UnicodeString): UnicodeString; overload;
function UnicodeUpperCase(const s : UnicodeString) : UnicodeString;{$ifdef SYSUTILSINLINE}inline;{$endif}
function UnicodeLowerCase(const s : UnicodeString) : UnicodeString;{$ifdef SYSUTILSINLINE}inline;{$endif}
function UnicodeCompareStr(const s1, s2 : UnicodeString) : PtrInt;{$ifdef SYSUTILSINLINE}inline;{$endif}
function UnicodeSameStr(const s1, s2 : UnicodeString) : Boolean;{$ifdef SYSUTILSINLINE}inline;{$endif}
function UnicodeCompareText(const s1, s2 : UnicodeString) : PtrInt;{$ifdef SYSUTILSINLINE}inline;{$endif}
function UnicodeSameText(const s1, s2 : UnicodeString) : Boolean;{$ifdef SYSUTILSINLINE}inline;{$endif}
Function UnicodeFormat (Const Fmt : UnicodeString; const Args : Array of const) : UnicodeString;
Function UnicodeFormat (Const Fmt : UnicodeString; const Args : Array of const; Const FormatSettings: TFormatSettings) : UnicodeString;
Function UnicodeFormatBuf (Var Buffer; BufLen : Cardinal; Const Fmt; fmtLen : Cardinal; Const Args : Array of const) : Cardinal;
Function UnicodeFormatBuf (Var Buffer; BufLen : Cardinal; Const Fmt; fmtLen : Cardinal; Const Args : Array of const; Const FormatSettings: TFormatSettings) : Cardinal;
Procedure UnicodeFmtStr(Var Res: UnicodeString; Const Fmt : UnicodeString; Const args: Array of const);
Procedure UnicodeFmtStr(Var Res: UnicodeString; Const Fmt : UnicodeString; Const args: Array of const; Const FormatSettings: TFormatSettings);
function StrMove(dest,source : PWideChar;l : SizeInt) : PWideChar; overload;
function StrPLCopy(Dest: PWideChar; const Source: UnicodeString; MaxLen: SizeUInt): PWideChar; overload;
function StrPCopy(Dest: PWideChar; const Source: UnicodeString): PWideChar; overload;
function StrScan(P: PWideChar; C: WideChar): PWideChar; overload;
function strnew(p : PWideChar) : PWideChar; overload;
function StrPas(Str: PWideChar): UnicodeString;overload;
function strecopy(dest,source : pwidechar) : pwidechar;
function strend(p : pwidechar) : pwidechar;
function strcat(dest,source : pwidechar) : pwidechar;
function strcomp(str1,str2 : pwidechar) : SizeInt;
function strlcomp(str1,str2 : pwidechar;l : SizeInt) : SizeInt;
function stricomp(str1,str2 : pwidechar) : SizeInt;
function strlcat(dest,source : pwidechar;l : SizeInt) : pwidechar;
function strrscan(p : pwidechar;c : widechar) : pwidechar;
function strlower(p : pwidechar) : pwidechar;
function strupper(p : pwidechar) : pwidechar;
function strlicomp(str1,str2 : pwidechar;l : SizeInt) : SizeInt;
function strpos(str1,str2 : pwidechar) : pwidechar;
function WideStrAlloc(size: cardinal): pwidechar;
function StrBufSize(str: pwidechar): Cardinal;
procedure StrDispose(str: pwidechar);
function BytesOf(const Val: UnicodeString): TBytes; overload;
function BytesOf(const Val: WideChar): TBytes; overload;
function StringOf(const Bytes: TBytes): UnicodeString;
function WideBytesOf(const Value: UnicodeString): TBytes;
function WideStringOf(const Value: TBytes): UnicodeString;
function ByteLength(const S: UnicodeString): Integer;
function UnicodeStringReplace(const S, OldPattern, NewPattern: UnicodeString; Flags: TReplaceFlags): UnicodeString;
function UnicodeStringReplace(const S, OldPattern, NewPattern: UnicodeString; Flags: TReplaceFlags; Out aCount : Integer): UnicodeString;