Releases: SolidWallOfCode/libswoc
Releases · SolidWallOfCode/libswoc
Making it
Primarily this adds makefile support as a shim on top of scons.
Will Power
This release is minor tweaks, fixes, and documentation updates.
IPEndpoint
will now parse addresses that do not have a port. The port is set to zero in such cases.MemArena
rounds to more values for small memory footprints.MemArena
now supports a block of static memory that is not released.- The generic
tag
was moved to be nested inside theswoc
namespace to avoid collisions. - Somewhat better support for
TextView
constructors and literal strings. MemSpan
now supports iteration.
Alignment
Add alignment support to MemArena
.
Clipper Chip
- Fixed a bug in
MemSpan<void>
prefix and suffix methods. - Added
TextView::clip...
methods to remove prefix / suffix that satisfied a predicate, without removing a separator character. - Update Unit Parsing example to use the new
TextView
methods. - Added support for "0b" prefix for binary integer parsing.
- Improved CMake support.
Range Compaction
- Fix blend bug for empty ranges on
false
blender return. - Add additional network support to IPRange classes.
- Add "compact" range BWF extension ('c' in format specifier extension).
Absolute
- Add
swoc::file::absolute
Wildfire Edition
- IP support library clean up, minor bug fixes.
- Added better IP library support for loopback and multicast address checking.
- Added "unit parser" example code.
TextView
updates- Added
constexpr
andnoexcept
to various methods. - Removed array and size constructor - since
substr
is nowconstexpr
it can be used instead.
- Added
- Added support for building on MAC OS (thanks to @bneradt)
Minor fixes.
- Fix missing IPEndPoint constructor.
- Fix two edge cases in IPSpace::blend.
Flat IP space
The primary change is the addition of a flat IP space example, on how to use IPSpace to create sorted arrays of IP ranges that can then be used for searching with very fast load times.
Also added more begin
and end
methods that take an IP address family, e.g. iterate over just the IPv6 ranges.
Compiler Compatibility
The primary effect of this release is to be more compatible with the ICC and AOCC compilers.