// Borland C++ Builder
// Copyright (c) 1995, 2005 by Borland Software Corporation
// All rights reserved

// (DO NOT EDIT: machine generated header) 'Strutil.pas' rev: 10.00

#ifndef StrutilHPP
#define StrutilHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member functions
#pragma pack(push,8)
#include <System.hpp>	// Pascal unit
#include <Sysinit.hpp>	// Pascal unit
#include <Sysutils.hpp>	// Pascal unit
#include <Classes.hpp>	// Pascal unit
#include <Windows.hpp>	// Pascal unit

//-- user supplied -----------------------------------------------------------

namespace Strutil
{
//-- type declarations -------------------------------------------------------
typedef Set<char, 0, 255>  TCharSet;

//-- var, const, procedure ---------------------------------------------------
#define CLRF "\r\n"
extern PACKAGE GUID __fastcall StringAsGUID(const AnsiString AStr);
extern PACKAGE System::ShortString __fastcall GUIDAsString(const GUID &GUID);
extern PACKAGE bool __fastcall IsOldParamName(const AnsiString ParamName);
extern PACKAGE bool __fastcall IsNewParamName(const AnsiString ParamName);
extern PACKAGE bool __fastcall IsMasParamName(const AnsiString ParamName);
extern PACKAGE System::TDateTime __fastcall StrToDateFmt(const AnsiString ADate, const AnsiString Fmt);
extern PACKAGE AnsiString __fastcall DateToSQLStr(const System::TDateTime ADate);
extern PACKAGE AnsiString __fastcall ValueFromStr(const AnsiString Str);
extern PACKAGE bool __fastcall IsBeginPartStr(const AnsiString PartStr, const AnsiString TargetStr);
extern PACKAGE bool __fastcall IsBlank(const AnsiString Str);
extern PACKAGE void __fastcall DoLowerCase(AnsiString &Str);
extern PACKAGE void __fastcall DoTrim(AnsiString &Str);
extern PACKAGE void __fastcall DoTrimTo(const AnsiString Source, AnsiString &Dest);
extern PACKAGE void __fastcall DoTrimRight(AnsiString &Str);
extern PACKAGE void __fastcall DoCopy(const AnsiString Source, AnsiString &Dest, int Index, int Count);
extern PACKAGE AnsiString __fastcall FastTrim(const AnsiString S);
extern PACKAGE AnsiString __fastcall FastCopy(const AnsiString S, int Index, int Count);
extern PACKAGE int __fastcall StrTrimmedLen(char * Str);
extern PACKAGE bool __fastcall StringInArray(const AnsiString s, AnsiString const * a, const int a_Size);
extern PACKAGE AnsiString __fastcall FormatIdentifierValue(int Dialect, const AnsiString Value);
extern PACKAGE bool __fastcall EquelNames(bool CI, const AnsiString Value, const AnsiString Value1);
extern PACKAGE AnsiString __fastcall EasyFormatIdentifier(int Dialect, const AnsiString Value, bool DoEasy);
extern PACKAGE AnsiString __fastcall FormatIdentifier(int Dialect, const AnsiString Value);
extern PACKAGE int __fastcall PosCh(char aCh, const AnsiString s);
extern PACKAGE int __fastcall PosCh1(char aCh, const AnsiString s, int StartPos);
extern PACKAGE int __fastcall PosCI(const AnsiString Substr, const AnsiString Str);
extern PACKAGE int __fastcall PosExt(const AnsiString Substr, const AnsiString Str, const TCharSet &BegSub, const TCharSet &EndSub);
extern PACKAGE int __fastcall PosExtCI(const AnsiString Substr, const AnsiString Str, const TCharSet &BegSub, const TCharSet &EndSub, bool AnsiUpper = true);
extern PACKAGE int __fastcall PosInRight(const AnsiString substr, const AnsiString Str, int BeginPos);
extern PACKAGE int __fastcall PosInSubstr(const AnsiString substr, const AnsiString Str, int BeginPos, int EndPos);
extern PACKAGE int __fastcall PosInSubstrExt(const AnsiString SearchStr, AnsiString Str, int BeginPos, int EndPos, const TCharSet &BegSub, const TCharSet &EndSub);
extern PACKAGE int __fastcall PosInSubstrCIExt(const AnsiString SearchStr, AnsiString Str, int BeginPos, int EndPos, const TCharSet &BegSub, const TCharSet &EndSub);
extern PACKAGE int __fastcall PosInSubstrCI(const AnsiString SearchStr, const AnsiString Str, int BeginPos, int EndPos);
extern PACKAGE AnsiString __fastcall MakeStr(char C, int N);
extern PACKAGE double __fastcall StrAsFloat(AnsiString S);
extern PACKAGE AnsiString __fastcall ToClientDateFmt(AnsiString D, Byte caseFmt);
extern PACKAGE AnsiString __fastcall TrimCLRF(const AnsiString s);
extern PACKAGE void __fastcall CopyChars(const AnsiString Src, AnsiString &Dest, int StartInSrc, int StartInDest, int Count);
extern PACKAGE AnsiString __fastcall ReplaceCIStr(const AnsiString S, const AnsiString Srch, const AnsiString Replace, bool Ansi = true);
extern PACKAGE AnsiString __fastcall ReplaceStr(const AnsiString S, const AnsiString Srch, const AnsiString Replace);
extern PACKAGE AnsiString __fastcall ReplaceStrCIInSubstr(const AnsiString Source, const AnsiString Srch, const AnsiString Replace, int BeginPos, int EndPos);
extern PACKAGE AnsiString __fastcall ReplaceStrInSubstr(const AnsiString Source, const AnsiString Srch, const AnsiString Replace, int BeginPos, int EndPos);
extern PACKAGE void __fastcall DoUpperCase(AnsiString &S, int FirstPos = 0x1, int LastPos = 0x0);
extern PACKAGE AnsiString __fastcall FastUpperCase(const AnsiString S);
extern PACKAGE bool __fastcall EquelStrings(const AnsiString s, const AnsiString s1, bool CaseSensitive);
extern PACKAGE AnsiString __fastcall ExtractWord(int Num, const AnsiString Str, const TCharSet &WordDelims);
extern PACKAGE AnsiString __fastcall ExtractLastWord(const AnsiString Str, const TCharSet &WordDelims);
extern PACKAGE int __fastcall WordCount(const AnsiString S, const TCharSet &WordDelims);
extern PACKAGE AnsiString __fastcall iifStr(bool Condition, const AnsiString Str1, const AnsiString Str2);
extern PACKAGE Variant __fastcall iifVariant(bool Condition, const Variant &Var1, const Variant &Var2);
extern PACKAGE int __fastcall FirstPos(char * Search, const int Search_Size, const AnsiString InString);
extern PACKAGE bool __fastcall WildStringCompare(AnsiString FirstString, AnsiString SecondString);
extern PACKAGE bool __fastcall SQLMaskCompare(const AnsiString aString, const AnsiString Mask);
extern PACKAGE bool __fastcall MaskCompare(const AnsiString aString, const AnsiString Mask);
extern PACKAGE int __fastcall WldIndexOf(Classes::TStrings* ts, const AnsiString Value, bool CaseSensitive);
extern PACKAGE AnsiString __fastcall StrOnMask(const AnsiString StrIn, const AnsiString MaskIn, const AnsiString MaskOut);
extern PACKAGE bool __fastcall StrIsInteger(const AnsiString Str);
extern PACKAGE bool __fastcall EasyLikeStr(AnsiString Str1, AnsiString Str2);
extern PACKAGE char __fastcall LastChar(const AnsiString Str);
extern PACKAGE AnsiString __fastcall QuotedStr(const AnsiString S);
extern PACKAGE AnsiString __fastcall CutQuote(const AnsiString S);
extern PACKAGE bool __fastcall EmptyStrings(Classes::TStrings* SL);
extern PACKAGE void __fastcall DeleteEmptyStr(Classes::TStrings* Src);
extern PACKAGE int __fastcall NonAnsiSortCompareStrings(Classes::TStringList* SL, int Index1, int Index2);
extern PACKAGE bool __fastcall FindInDiapazon(Classes::TStringList* SL, const AnsiString S, const int StartIndex, const int EndIndex, bool AnsiCompare, int &Index);
extern PACKAGE void __fastcall SLDifference(Classes::TStringList* ASL, Classes::TStringList* BSL, Classes::TStrings* ResultSL);
extern PACKAGE void __fastcall GetNameAndValue(const AnsiString s, AnsiString &Name, AnsiString &Value);
extern PACKAGE bool __fastcall NeedQuote(const AnsiString Name);
extern PACKAGE bool __fastcall EasyNeedQuote(const AnsiString Name);
extern PACKAGE unsigned __fastcall Q_StrLen(char * P);

}	/* namespace Strutil */
using namespace Strutil;
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// Strutil
