Catalog · How the catalog works
shDelphiUtils
Collection of Delphi utilities
- ★ 1 on GitHub
Anyone may press Interesting, signed in or not. It helps others find this project.
README
shDelphiUtils
This is a collection of Delphi utilities that I have written over approximately 20 years of coding in Delphi. Be warned that the latest version of Delphi that I used to do serious development was Delphi 2007. So most of the code you'll find here is of that era. I upgraded some classes with generics using Delphi XE, but that's about it.
The unit structure aligns with my C# utilities solution. The coding style is the one Borland recommended for Delphi (way back when) with some influences from my C# coding.
Unlike my C# utilities, which are very representative of how I write production code, this repo is more experimental with very little tests and even fewer guarantuees that the code does what it says it does.
Collections
- TConcurrentQueue: Experimental queue for use with multiple reader- and writer-threads without locking. Uses Interlocked operations for synchronization.
- TGrowingStringMap: A never-shrinking key value list parsed efficiently from a text-representation of sorted key value pairs
- TMostRecentUpdateQueue: Experimental Delphi implementation of the Most Recent Update Pattern
- TSet: Basic set implementation based on TDictionary.
- TSlimStringMap: A string map that is optimzed for minimal memory footprint at the expense of more frequent memory reallocations
- TStringKeyValueScanner: Experimental parser for a set of known keys in the text representation of key value pairs
- TTrie: Experimental Trie implementation with support for a reduced set of possible key elements to minimize space requirements.
- TTrieDictionary: Experimental IDictionary implementation that combines an array for single character keys with a TTrie for short keys and finally a TDictionary for long keys
Common
- TRecordBlockMemoryManager: Experimental memory manager that allocates each record from a large block of memory starting over with a new block when the initial block runs out
Media
- TVolumeMonitor: Monitors the current volume against a given target volume and reports and/or adjusts the current volume to match the target.

