James
James
### Description The following code throws a compiler error, when it is expected to work: ```nim type Letter = enum A LetterPairs = object values: seq[(Letter, string)] iterator items(list: var...
This change refactors the build scripts a bit to support building on both `1.6.14` and `2.0.2`, and adds support for building against Nim 2. The only thing that really needed...
This function is a faster way to set many pixels in a bitmap, as compared to individually setting each pixel, while still being safe. The speed comes from a few...
This change adds a github workflow that auto-generates docs and publishes to a github page for every push to mainline. This is a pre-emptive pull request based on the conversation...
This is a set of changes that reduces the number of heap allocations performed: * Introduces `BitmapDataObj`, which is a version of `BitmapData` on the stack * Use `getSize` for...
I agree that my contributions are licensed under the Individual Contributor License Agreement V4.0 ("CLA") as stated in https://github.com/igarastudio/cla/blob/main/cla.md I have signed the CLA following the steps given in https://github.com/igarastudio/cla#signing...
I've found two situations where calling `overlap` for two `Segment` instances will cause a division by zero: 1. If the lines are parallel, for example: ```nim Segment(at: vec2(625.0, 22.0), to:...
### Description The `callOperator` fails to bind when the usage and declaration are spread across two different files. For example: ```nim ## ## myLib.nim ## type Functor* = ref object...
This changes adds more procs to the `options` stdlib. These are convenience functions that make life easier when interacting with Options -- I've wound up adding them to just about...