Who was it that said we'd never need more than 64 bits??
Some tasks work best with unsigned 128-bit integers, eg. working with IPv6 addresses.
This module implements a UInt128 type composed out of 4 UInts that can handle limited bit-wise and arithmetic operations.
NB: this task is a better fit for UInt32, but it cannot be used here as we rely on shifting bits off the significant end and Pkl's implementation doesn't permit this
Returns the relative, descendent directory path between this module and other.
Throws if no such path exists.
For example, if module mod1 has path /dir1/mod1.pkl, and module mod2 has path /dir1/dir2/dir3/mod2.pkl,
then mod1.relativePathTo(mod2) will return List("dir2", "dir3").
A common use case is to compute the directory path between a template located at the root of a hierarchy
(say rootModule.pkl) and the currently evaluated module (accessible via the module keyword):
Who was it that said we'd never need more than 64 bits?? Some tasks work best with unsigned 128-bit integers, eg. working with IPv6 addresses. This module implements a
UInt128
type composed out of 4UInt
s that can handle limited bit-wise and arithmetic operations. NB: this task is a better fit forUInt32
, but it cannot be used here as we rely on shifting bits off the significant end and Pkl's implementation doesn't permit this