This, together with bitops2 and endians2, forms the core primitive
offering for working with integers as the computer sees them.
The focus of intops is to expose a number of common integer operations
typically used to build more complex abstractions such as bigints,
mp-ints etc while having access to the best performance the compiler and
cpu can offer.
There is more to do here, but this provides an outline of what this
module could look like.
Obviously, there are no exceptions or defects around - the point of
these utilities is to stay as close as possible to bare metal. They
could be used to implement such features however (similar to how
`system/integerops` works).
* Added `IntervalSet`, sets of non-adjacent intervals
Relocated from nimbus-eth1 snap sync development
* Fix local import directive
* Fix --styleCheck complaints
* Attempt to get around CI problem by varying items
details:
Vary all_tests exec list
Hide useless globalness of `noisy` constant in non-debugging mode
* Optimized and exception-less encoding/decoding procedures for decimal integers.
* Add tests.
* Fix import path.
* Fix review comments.
* Code simplification.
* Make toBytes() allocation free.
* Do not perform conversion to signed type to avoid compiler's overflow checks.
* random helpers
* arrayops as a home for small array/openArray utilities
* assign2 - a replacement for genericAssign and assignment operators in
general which in nim are very slow
* use assign2 in a few places to speed things up
* fixes
* fixes
* Initial commit of UserOnly Windows ACL settings for files and folders.
* Move ACL procedures to windows/acl.
Move ACL tests to test_winacl.nim.
* Add test_winacl.nim
* Fix *nix compilation problem.
* More proper fix for *nix targets.
* Initial commit of io2 module
* Rename to io2.
Add createPath with permissions.
Add writeFile with permissions.
Add tests.
* Add test_io2 to all tests.
* Add posix permissions.
* Add toString procedure for set[Permission] and tests.
* Remove safeio.nim
* Add setPermissions procedures.
Fix writeFile() to change permissions.
Add more writeFile() tests.
* Change C ReadOnly/WriteOnly/ReadWrite to pair of Read/Write.
Add tests for openFile.
* File handles is no inherited by default, with option to turn on inheritance.
* Review comments fixes.
More tests.
* Fix x86 compilation problems.
* Rename toSet -> toPermissions.
* Avoid race condition on writeFile permissions.