P5-digest-transformpath

Jul 20, 2023

Implements the TransformPath concept

The DigestTransformPath module implements the TransformPath concept. A TransformPath is a complex higher-order key that is designed for use with chains of functions that sequentially transform a piece of data.

The concept starts with a sizable chunk of data, for example an image, for which we can determine a unique identifier, and for which we can cheaply determine if and when the source material has changed. A series of resource-intensive transforms might be applied to this original data to produce another piece of data. In the image example, we might auto-level, crop, scale, rotate, colour-balance and then thumbnail the image. This transformed data would be put into a cache. If at some future point we wish to obtain the same image, but would preferably like to use the cached version, we would have to take the original image, reapply the transforms, and then compare to the result the first time around.

Further documentation is found within the module.



Checkout these related ports:
  • Zziplib - Library to provide transparent read access to zipped files
  • Zydis - Fast and lightweight x86/x86-64 disassembler library
  • Zycore-c - Support library with platform independent types, macros, etc for Zydis
  • Zthread - Platform-independent object-oriented C++ threading library
  • Zookeeper - Coordination Service for Distributed Applications
  • Zls - Zig LSP implementation + Zig Language Server
  • Zfp - High throughput library for compressed floating-point arrays
  • Zeal - Offline documentation browser
  • Zapcc - C++ caching compiler based on clang
  • Zanata-platform - Web-based translation platform
  • Zanata-cli - Zanata Java command line client
  • Z88dk - Complete Z80/Z180 development kit
  • Z80ex - ZiLOG Z80 CPU emulator library
  • Z80asm - Assembler for the Z80 microprocessor
  • Z80-asm - Z80 assembly code assembler and disassembler