| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Ensure immutability of sets (and maps with SetMany) | Oskar Haarklou Veileborg | 2023-01-09 | 4 | -30/+17 |
| | | |||||
| * | Merge pull request #35 from laher/sets-maps-append-multi | Ben Johnson | 2023-01-02 | 5 | -21/+212 |
| |\ | | | | | Sets & maps append-multi. Also docs and a fix for SortedSets | ||||
| | * | set/sorted-set: Items() to return slice of items | Am Laher | 2022-12-28 | 1 | -0/+22 |
| | | | |||||
| | * | SortedMap: set multiple items at once | Am Laher | 2022-12-28 | 1 | -0/+23 |
| | | | |||||
| | * | Fix SortedSet.Set. NewMapOf. docs | Am Laher | 2022-12-28 | 4 | -3/+125 |
| | | | |||||
| | * | sets: varargs | Am Laher | 2022-12-28 | 2 | -18/+42 |
| |/ | |||||
| * | Merge pull request #34 from laher/sets | Ben Johnson | 2022-12-26 | 2 | -0/+272 |
| |\ | | | | | Set + SortedSet with tests | ||||
| | * | Set + SortedSet with test | Am Laher | 2022-12-24 | 2 | -0/+272 |
| | | | |||||
| * | | Merge pull request #33 from laher/addmulti | Ben Johnson | 2022-12-26 | 1 | -7/+19 |
| |\ \ | |/ |/| | List: varargs for Append,Prepend,NewList | ||||
| | * | List: varargs for Append,Prepend,NewList | Am Laher | 2022-12-24 | 1 | -7/+19 |
| |/ | |||||
| * | Merge pull request #30 from laher/master | Ben Johnson | 2022-12-21 | 1 | -18/+9 |
| |\ | | | | | readme updates for latest changes | ||||
| | * | readme updates for latest changes | Am Laher | 2022-12-22 | 1 | -18/+9 |
| |/ | |||||
| * | Merge pull request #29 from laher/map-keys-comparable | Ben Johnson | 2022-12-20 | 1 | -47/+81 |
| |\ | | | | | generics: widen map key constraint to 'comparable' | ||||
| | * | generic-widening: improve docs | Am Laher | 2022-12-04 | 1 | -6/+6 |
| | | | |||||
| | * | generics: widen map key constraint to 'comparable' | Am Laher | 2022-12-04 | 1 | -42/+76 |
| |/ | |||||
| * | Merge pull request #28 from BarrensZeppelin/master | Ben Johnson | 2022-12-02 | 2 | -30/+65 |
| |\ | | | | | Allow lists to contain non-comparable elements | ||||
| | * | Allow lists to contain non-comparable elements | Oskar Haarklou Veileborg | 2022-11-17 | 2 | -30/+65 |
| |/ | | | | | | | | | | | | | | | | | The current design uses comparability of elements only to detect vacant entries in leaf node children lists, using the zero value of the element type as "vacant". The reason we care about vacant entries is to avoid copy operations in certain Slice calls. If the entries are not vacant, we have to "zero" the entries in the returned slice to remove references to allocated memory. Therefore, (hackily) treating the zero value as vacant works because the zero value for pointers is nil (it does not reference anything). However, requiring the list elements to be comparable is inconvenient. There shouldn't be a type bound on the elements of a general purpose list. With this change vacancy is kept track of with a bitset in list leaf nodes. | ||||
| * | Merge pull request #24 from banks/patch-1 | Ben Johnson | 2022-10-06 | 1 | -12/+19 |
| |\ | | | | | Remove references to []byte keys in README | ||||
| | * | Remove references to []byte keys in README | Paul Banks | 2022-10-05 | 1 | -12/+19 |
| |/ | | | | | | | #23 added generic support (which is awesome) but noted the breaking change about no longer supporting `[]byte` keys due to the `Ordered` constraint. Ideally, this library would continue to support `[]byte` keys and use a custom interface to constrain key types instead. But until that happens, the README right now is a bit surprising as it talks explicitly about supporting `[]byte` keys still but they are actually a compile error! Here's a drive-by fix for the README for now - I _think_ I caught all the incorrect statements. | ||||
| * | Merge pull request #23 from laher/master | Ben Johnson | 2022-10-04 | 6 | -1094/+720 |
| |\ | | | | | Adds generics | ||||
| | * | revert fork-related readme content | Am Laher | 2022-06-11 | 1 | -17/+0 |
| | | | |||||
| | * | add missing ptr types; tidyup | Am Laher | 2022-06-11 | 2 | -69/+18 |
| | | | |||||
| | * | undo v2 module change after comment from @benbjohnson | Amir Laher | 2022-05-20 | 1 | -1/+1 |
| | | | |||||
| | * | upgrade github actions to go 1.18 | Amir Laher | 2022-05-20 | 1 | -2/+2 |
| | | | |||||
| | * | Set module path as v2 (breaking change) | Amir Laher | 2022-05-19 | 1 | -1/+1 |
| | | | |||||
| | * | update readme | Amir Laher | 2022-05-19 | 2 | -20/+37 |
| | | | |||||
| | * | implement generic immutable maps | Amir Laher | 2022-05-19 | 4 | -941/+610 |
| | | | |||||
| | * | convert lists to use generics | Amir Laher | 2022-05-19 | 3 | -139/+147 |
| |/ | |||||
| * | Fix MapBuilder docs | Ben Johnson | 2021-06-01 | 1 | -1/+1 |
| | | |||||
| * | Merge pull request #16 from benbjohnson/refactor-builders | Ben Johnson | 2020-11-17 | 3 | -108/+107 |
| |\ | | | | | Refactor builders | ||||
| | * | Refactor builders | Ben Johnson | 2020-11-17 | 3 | -108/+107 |
| |/ | | | | | | | This commit fixes a bug in builders that caused changes to leak when building on existing collections. The builders now only work on empty list & map types and are marked as invalid after the underlying collection has been retrieved from them. | ||||
| * | Merge pull request #15 from benbjohnson/tweak-actions | Ben Johnson | 2020-09-23 | 2 | -2/+2 |
| |\ | |||||
| | * | GitHub Actions tweaks | Ben Johnson | 2020-09-23 | 2 | -2/+2 |
| |/ | |||||
| * | README | Ben Johnson | 2020-09-23 | 1 | -1/+1 |
| | | | | Updating badges | ||||
| * | Merge pull request #14 from benbjohnson/github-actions | Ben Johnson | 2020-09-23 | 1 | -0/+29 |
| |\ | | | | | Add GitHub Actions support | ||||
| | * | Add GitHub Actions support | Ben Johnson | 2020-09-23 | 1 | -0/+29 |
| |/ | |||||
| * | README | Ben Johnson | 2020-09-23 | 1 | -12/+15 |
| | | | | Update docs to reflect new `Hasher` & `Comparer` types. | ||||
| * | Merge pull request #13 from benbjohnson/circleci | Ben Johnson | 2020-09-22 | 2 | -14/+1 |
| |\ | | | | | Remove CircleCI | ||||
| | * | Remove CircleCI | Ben Johnson | 2020-09-22 | 2 | -14/+1 |
| |/ | |||||
| * | Merge pull request #12 from benbjohnson/reflect | Ben Johnson | 2020-09-22 | 2 | -25/+526 |
| |\ | | | | | Add additional hashers & comparers. | ||||
| | * | Add additional hashers & comparers. | Adrian | 2020-09-22 | 2 | -25/+526 |
| |/ | | | | | | | | This commit adds all int & uint type hashers & comparers. It also provides reflection-based hashers & comparers for int, uint, & string types that are wrapped with a different named type. Co-authored-by: Ben Johnson <benbjohnson@yahoo.com> | ||||
| * | Merge pull request #9 from benbjohnson/readme | Ben Johnson | 2019-03-06 | 1 | -2/+2 |
| |\ | | | | | Change hasher & comparer implementations to unexported in README | ||||
| | * | README | Ben Johnson | 2019-03-06 | 1 | -2/+2 |
| | | | | | | | Change hasher & comparer implementations to unexported in README. | ||||
| * | | Merge pull request #8 from benbjohnson/list-builder-len | Ben Johnson | 2019-03-06 | 2 | -1/+8 |
| |\ \ | |/ |/| | Add ListBuilder.Len() | ||||
| | * | Add ListBuilder.Len() | Ben Johnson | 2019-03-06 | 2 | -1/+8 |
| |/ | | | | | | This commit adds a method to check the current length of a list on a `ListBuilder`. This allows the length to be checked without marking the next builder change as immutable. | ||||
| * | Merge pull request #7 from benbjohnson/sorted-map-builder | Ben Johnson | 2019-03-06 | 3 | -61/+280 |
| |\ | | | | | Add SortedMapBuilder | ||||
| | * | Add SortedMapBuilder | Ben Johnson | 2019-03-06 | 3 | -61/+280 |
| |/ | | | | This commit adds an efficient builder for creating SortedMap objects. | ||||
| * | Merge pull request #6 from benbjohnson/remove-cmp | Ben Johnson | 2019-03-06 | 3 | -8/+7 |
| |\ | | | | | Remove go-cmp dependency | ||||
| | * | Remove go-cmp dependency | Ben Johnson | 2019-03-06 | 3 | -8/+7 |
| |/ | |||||
| * | Merge pull request #5 from benbjohnson/map-builder | Ben Johnson | 2019-03-06 | 3 | -116/+448 |
| |\ | | | | | Add MapBuilder | ||||
