Stewart's Utility Library
This is a small collection of utility modules. It is at a pre-alpha stage of development. Currently it consists of:
- A bit array implementation that supports slicing on non-byte boundaries. Also includes a bit pointer type that can point to arbitrary bits within a byte.
- Functions for converting command lines to argument arrays and vice versa. Useful for parsing Windows command lines and launching external programs. (The Unix implementation needs work.)
- A set of simple classes for communicating with the standard input and output with codepage support under Windows and testing for EOF properly.
- A set of object-oriented date and time types serving as an alternative to std.date.
- A wrapper for numeric types used to represent physical measurements, with compile-time
primitive units checking.
- A wrapper template to enable a function pointer (currently only non-variadic D-linkage functions) to be used as a delegate.
- A hashtable-based associative container template. Unlike DMD's dodgy associative array implementation, it doesn't rely on an ordering comparator, and so will work on any struct, union or class type that has meaningful toHash and opEquals methods.
- A hashtable-based set template.
In 7-zip format:
In good old-fashioned zip format:
Version 0.05 (for good old-fashioned D1):
The following features are among those planned for future versions:
- Improvements to smjg.util.datetime:
- Parsing input date/time strings
- Support for daylight saving time adjustments
D Programming Resources |
Programming Resources Home