Unit SqlitePassUtils

DescriptionusesClasses, Interfaces, Objects and RecordsFunctions and ProceduresTypesConstantsVariables

Description

The unit SqlitePassUtils implement missing classes and functions for the Delphi4 or Delphi 6 VCL. It uses mostly original code from FCL. implements : - TObjectList for Delphi 4 - TSqlitePassBitArray (Bit Array <-> Integer converter) - TSqlitePassList (A TList with less properties but faster) - TSqlitePassAnsiStringList (A TStringList with less properties but faster) - TSqlitePassWideStringList (A TStringList with less properties but faster) - Strings functions (String <-> UTF8 converter) - TSqlitePassIntegerList (a mini TList implementation to manage Integers)

—————————————————————————

This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

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. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

—————————————————————————

Author : Luc DAVID Email: luckylazarus@free.fr Last update : 10.03.2010

—————————————————————————

uses

Overview

Classes, Interfaces, Objects and Records

Name Description
record TSqlitePassAnsiStringItem  
Class TSqlitePassAnsiStringList  
Class TSqlitePassBitArray  
Class TSqlitePassIntegerList  
Class TSqlitePassList  
Class TSqlitePassObjectList  
record TSqlitePassWideStringItem  
Class TSqlitePassWideStringList  

Functions and Procedures

function AnsiToUTF8(const S: AnsiString): UTF8AnsiString;
function BoolAsString(Value: Boolean): String;
function FieldTypeToString(FieldType: TFieldType): String;
Procedure OutputDebugString(S: String);
function RPos(const aSubStr, aString : String; const aStartPos: Integer): Integer;
function StringToFieldType(FieldTypeName: String): TFieldType;
function UTF8Decode(const s : UTF8AnsiString): WideString;
function UTF8Encode(const s : WideString) : UTF8AnsiString;
function UTF8ToAnsi(const S: PAnsiChar): AnsiString;
function WStrCopy(Dest: PWideChar; const Source: PWideChar): PWideChar;
function _WStrCopy(Dest: PWideChar; const Source: PWideChar): PWideChar;

Types

PByteBool = ˆByteBool;
PIntegerList = ˆTIntegerList;
PPRecBuffer = ˆPRecBuffer;
PPSqliteValue = ˆPSqliteValue;
PRecBuffer = PAnsiChar;
PRecBufferList = ˆTRecBufferList;
PSqlitePassAnsiStringItem = ˆTSqlitePassAnsiStringItem;
PSqlitePassAnsiStringItemList = ˆTSqlitePassAnsiStringItemList;
PSqlitePassWideStringItem = ˆTSqlitePassWideStringItem;
PSqlitePassWideStringItemList = ˆTSqlitePassWideStringItemList;
PSqliteValue = Pointer;
PUTF16WideString = ˆUTF16WideString;
PUTF8AnsiString = ˆUTF8AnsiString;
TIntegerList = array[0..MaxListSize - 1] of Integer;
TRecBufferList = array[0..MaxListSize - 1] of PRecBuffer;
TSqlitePassAnsiStringItemList = array[0..MaxListSize] of TSqlitePassAnsiStringItem;
TSqlitePassWideStringItemList = array[0..MaxListSize] of TSqlitePassWideStringItem;
UTF16WideString = WideString;
UTF8AnsiString = AnsiString;

Description

Functions and Procedures

function AnsiToUTF8(const S: AnsiString): UTF8AnsiString;
 
function BoolAsString(Value: Boolean): String;
 
function FieldTypeToString(FieldType: TFieldType): String;
 
Procedure OutputDebugString(S: String);

function GetExeDir: String; function GetWorkDir: String;

function RPos(const aSubStr, aString : String; const aStartPos: Integer): Integer;

Same as Pos but from Right to Left

function StringToFieldType(FieldTypeName: String): TFieldType;
 
function UTF8Decode(const s : UTF8AnsiString): WideString;
 
function UTF8Encode(const s : WideString) : UTF8AnsiString;
 
function UTF8ToAnsi(const S: PAnsiChar): AnsiString;
 
function WStrCopy(Dest: PWideChar; const Source: PWideChar): PWideChar;
 
function _WStrCopy(Dest: PWideChar; const Source: PWideChar): PWideChar;

Procedure SetWideString (Out S : WideString; Buf : PWideChar; Len : SizeInt);

Types

PByteBool = ˆByteBool;
 
PIntegerList = ˆTIntegerList;
 
PPRecBuffer = ˆPRecBuffer;
 
PPSqliteValue = ˆPSqliteValue;
 
PRecBuffer = PAnsiChar;
 
PRecBufferList = ˆTRecBufferList;
 
PSqlitePassAnsiStringItem = ˆTSqlitePassAnsiStringItem;

Moved to Public section...same

PSqlitePassAnsiStringItemList = ˆTSqlitePassAnsiStringItemList;
 
PSqlitePassWideStringItem = ˆTSqlitePassWideStringItem;
 
PSqlitePassWideStringItemList = ˆTSqlitePassWideStringItemList;
 
PSqliteValue = Pointer;
 
PUTF16WideString = ˆUTF16WideString;
 
PUTF8AnsiString = ˆUTF8AnsiString;
 
TIntegerList = array[0..MaxListSize - 1] of Integer;
 
TRecBufferList = array[0..MaxListSize - 1] of PRecBuffer;
 
TSqlitePassAnsiStringItemList = array[0..MaxListSize] of TSqlitePassAnsiStringItem;
 
TSqlitePassWideStringItemList = array[0..MaxListSize] of TSqlitePassWideStringItem;
 
UTF16WideString = WideString;
 
UTF8AnsiString = AnsiString;
 

Generated by PasDoc 0.11.0 on 2010-09-10 15:54:38