Sign in Join
FPDoc Onlineexperiment

FCL

Free Component Library: containers, streams, INI files, processes, JSON, databases, zip and more.

Index A to Z · Class hierarchy

The Free Component Library is a series of units that implement various classes and non-visual components for use with Free Pascal. They are building blocks for non-visual and visual programs, such as designed in Lazarus.

The TDataset descendents have been implemented in a way that makes them compatible to the Delphi implementation of these units. There are other units that have counterparts in Delphi, but most of them are unique to Free Pascal.

Units

UnitWhat it holdsEntriesDescribed
AdvancedIPCFile-based inter-process communication for server-client architectures5774%
AdvancedSingleInstanceImplement SingleInstance using files.1979%
Ascii85ASCII 85 or Base 85 encoding.3485%
AVL_TreeAVL tree implementation.10675%
Base64Unit implementing base64 encoding.4144%
BlowFishUnit implementing Blowfish encryption/decryption streams.2592%
BufDatasetImplements a database-aware buffered dataset.37865%
BufStreamImplements Buffered streams.3471%
CacheClsUnit implementing cache class.3288%
ContnrsVarious general purpose classes: stack, queue, objectlists.30775%
CsvDocumentUnit presenting a CSV file as a 2-dimensional array.3297%
CsvReadWriteUnit to read and write a CSV file.5080%
CustAppCustom application class.4980%
CustWebBase functionality for HTTP hosting implementations7670%
DaemonAppDaemon (service) application class.24975%
DBDatabase access layer.151655%
DbugIntfUnit to send commands to a debug server process.3294%
DbugMsgAuxiliary unit for the dbugintf unit.14100%
EventLogUnit implementing system log class.5385%
EzCgiEasy CGI unit.1995%
FileInfoFile and program version information utilities44100%
fpExprParsProvides expression parsing with support for variables, functions, and mathematical operations43284%
fpHTTPHTTP request handling for web servers12271%
fpHTTPClientHTTP client implementation for making HTTP requests18555%
fpJsonJSON support for Free Pascal.39653%
fpJsonApplyApply elements from one JSON object to another2492%
fpJsonToPasJSON to Pascal code generator7956%
fpJsonValueRoutines to convert TValue records to JSON and vice versa3100%
FpMimeTypesUnit to handle mapping of filename extensions to MIME type.2387%
fpMkUnitFree Pascal package building and installation engine85891%
fpObserverObserver pattern implementation for Free Pascal13263%
fpTemplateSimple template parsing mechanism.6796%
fpTimerTimer class.3382%
FpWebAdvanced web application development with actions and templates7977%
GetTextUnit implementing resource string translation using gettext files.3675%
HTTPDefsBasic HTTP protocol declarations and classes45181%
HTTPProtocolHTTP protocol utilities and constants.127100%
HTTPRouteHTTP request routing implementation11687%
IBConnectionFirebird/Interbase database connection unit.7552%
IdeaThe IDEA unit provides IDEA encryption support.3190%
IniColCollection which can write itself to inifile.3977%
IniFilesIni files support.11590%
IoStreamImplement streams for handling standard input, output and stderr.1486%
Json2YamlJSON to YAML converter unit1533%
JsonComparerJSON data structure comparison utility862%
JsonIniJSON-based ini file implementation3683%
JsonParserJSON data parser implementation1724%
JsonReaderEvent-based JSON reading with SAX-like parsing9749%
JsonScannerJSON lexical scanner4796%
JsonWriterJSON writer classes for creating JSON files without building in-memory data structures4680%
LibTartar archive manipulation classes.10081%
MaskUtilsText mask utilities.4195%
MemDsImplements an in-memory dataset.8399%
MSSQLConnMicrosoft SQL Server and Sybase ASE database connectors.6149%
NullStreamUnit to implement a null stream.1164%
PasCodeGenUtility unit to generate pascal code55100%
PipesUnit implementing pipe streams.2186%
PooledMMPooled memory manager implementation.3370%
ProcessUnit implementing the TProcess component.19660%
RttiUtilsRTTI utility functions.4188%
SimpleIPCSimple one-way IPC protocol.13273%
SingleInstanceUnit to run only a single instance in your application.2781%
SQLDBA set of classes for connecting to SQL databases and running SQL commands on them.54558%
SQLTypesTypes used in various SQL related units.4593%
StreamCollCollection which can stream itself.4840%
StreamExStream extensions.11464%
StreamIOStreams for standard text files.3100%
SyncObjsSynchronization objects.10932%
URIParserURI Parsing routines.2383%
WFormatBase class for formatted document writers4998%
WHtmlHTML formatting writer implementation48100%
WMarkDownMarkdown formatting writer implementation33100%
WTexLaTeX formatting writer implementation3795%
WTextPlain text formatting writer implementation3897%
ZipperUnit implementing zip/unzip compression/decompression functionality.27887%
ZStreamSupport for compression streams.5961%

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.