Paul Chesnais
14f714261f
Generics migration ( #237 )
...
* Generics migration
This attempts to migrate this library in the least invasive way by preserving as
much of the original API as possible. It does not change the tests in a
meaningful way nor does it attempt to upgrade any logic that can be simplified
or improved with generics. This is purely an API migration, and still requires a
lot of additional work to be fully ready.
* Fix a few broken tests around serialization
* Add v2 suffix
* Temporarily change mod name for testing
* Rename module to /v2
5 months ago
Emir Pasic
41012c6c58
Improve code coverage
2 years ago
Emir Pasic
e438e7b77b
Set operations: intersection, union, difference
2 years ago
Emir Pasic
364a244af9
Enforce String() inteface on Container
2 years ago
Emir Pasic
1f0b87f0e1
Implements json.Marshaler and json.Unmarshaler interfaces
2 years ago
Emir Pasic
08ae493e8a
Implement NextTo and PrevTo for all iterators and containers (index or key, forward-only or reversable)
2 years ago
Emir Pasic
4673683cbc
Update enumerable.go
7 years ago
Emir Pasic
0dcb10bcab
- JSON serialization for all lists
7 years ago
Emir Pasic
213367f1ca
- replace long bsd text with short in all .go files
8 years ago
Emir Pasic
f052c96069
- iterator end on reverse-iterable data structures
8 years ago
Emir Pasic
57162feff5
- rename Reset() to Begin() in iterators (this will allow End() which will make reverse loops more readable)
8 years ago
Emir Pasic
bdfeab4912
- iterator first on all structures with reversible iterators
8 years ago
Emir Pasic
f8b0747409
- iterator last on all structures with reversible iterators
8 years ago
Emir Pasic
b86d413e66
- iterator reset on all structures
8 years ago
Emir Pasic
d7a31571cc
- add reversible iterators to lists (array list and doubly-linked list)
...
- documentation and tests updates
8 years ago
Emir Pasic
59bebe43ce
- update all documentation to be in godoc style
8 years ago
Emir Pasic
2ccfba5f93
- replace timsort with go's sort
8 years ago
Emir Pasic
ef9baa808a
- golint
8 years ago
Emir Pasic
544abaeab1
- remove map and select functions from enumerable interface, because this requires type assertions in chaining, which is really ugly and unnecessary. the only drawback is that one might forget to implement those functions and interface implementations asserts will not register that. (need help on this)
8 years ago
Emir Pasic
beb6027d2f
- documentation updates
8 years ago
Emir Pasic
8cb4635c2c
- code document all enumarable functions and iterators in containers
8 years ago
Emir Pasic
f0206f2457
- add enumerable to tree map
8 years ago
Emir Pasic
3b6a40775a
- split enumerables into enumerables with keys and with indexes (same was done for iterators)
8 years ago
Emir Pasic
e4c3d8a0d8
- split iterators into two type (iterator with index and iterator with key)
8 years ago
Emir Pasic
549ece1100
- iterator implementation
...
- tests for arraylist enumerable operations
8 years ago
Emir Pasic
6fefe7cc24
- iterator tests
...
- container_test fix
8 years ago
Emir Pasic
3b3edfc539
- naming conventions (calling interfaces by what they are)
8 years ago
Emir Pasic
f9305332a4
- expose comparator in binary heap
...
- fix comment
8 years ago
Emir Pasic
c5826ac043
sorting on containers, lists and as a utils method (test+documentation)
9 years ago
emirpasic
be9edcef3c
- creating a common containers interface for all data structures
9 years ago