Commit Graph

34 Commits

Author SHA1 Message Date
Emir Pasic f052c96069 - iterator end on reverse-iterable data structures 2016-06-27 00:41:32 +02:00
Emir Pasic 57162feff5 - rename Reset() to Begin() in iterators (this will allow End() which will make reverse loops more readable) 2016-06-27 00:08:01 +02:00
Emir Pasic cbc23a5b79 - test iterator first on all iterable data structures 2016-06-26 23:58:23 +02:00
Emir Pasic bdfeab4912 - iterator first on all structures with reversible iterators 2016-06-26 22:50:14 +02:00
Emir Pasic 3d1014bf63 - test iterator last on all structures with reversible iterators 2016-06-26 22:40:49 +02:00
Emir Pasic f8b0747409 - iterator last on all structures with reversible iterators 2016-06-26 22:27:08 +02:00
Emir Pasic 3a938233a0 - test iterator reset on all structures 2016-06-26 21:44:23 +02:00
Emir Pasic b86d413e66 - iterator reset on all structures 2016-06-26 20:50:49 +02:00
Emir Pasic d7a31571cc - add reversible iterators to lists (array list and doubly-linked list)
- documentation and tests updates
2016-06-25 18:17:48 +02:00
Emir Pasic 59bebe43ce - update all documentation to be in godoc style 2016-06-25 17:02:21 +02:00
Emir Pasic 2ccfba5f93 - replace timsort with go's sort 2016-06-25 05:51:41 +02:00
Emir Pasic ef9baa808a - golint 2016-06-24 21:52:16 +02:00
Emir Pasic 35457aba81 - fix spelling 2016-06-24 20:27:34 +02:00
Emir Pasic 616c850bff - refactor list's tests 2016-06-24 19:17:50 +02:00
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) 2016-06-24 06:20:24 +02:00
Emir Pasic 8cb4635c2c - code document all enumarable functions and iterators in containers 2016-06-24 00:08:04 +02:00
Emir Pasic 3b6a40775a - split enumerables into enumerables with keys and with indexes (same was done for iterators) 2016-06-22 21:03:51 +02:00
Emir Pasic e4c3d8a0d8 - split iterators into two type (iterator with index and iterator with key) 2016-06-22 19:59:08 +02:00
Emir Pasic 60c2f3af71 - add enumerable and iterator to doubly linked list 2016-06-22 05:26:48 +02:00
Emir Pasic c685593e6e - rewrite enumerable operations using iterator (for easier copy/paste into other containers) 2016-06-22 05:11:41 +02:00
Emir Pasic 549ece1100 - iterator implementation
- tests for arraylist enumerable operations
2016-06-22 04:53:38 +02:00
Emir Pasic 6fefe7cc24 - iterator tests
- container_test fix
2016-06-22 03:42:35 +02:00
Emir Pasic 3b3edfc539 - naming conventions (calling interfaces by what they are) 2016-06-22 03:09:48 +02:00
Emir Pasic 04706e8d03 - start on enumarables (arraylist implemented) 2016-06-21 05:31:00 +02:00
Emir Pasic 56b8a59488 - update all lists to use "value" terminology for coherence, e.g. Add(values...) rather than Add(elements...) 2016-06-21 03:39:47 +02:00
Emir Pasic c7abdd28b3 - add insert for list and arraylist 2016-06-21 02:22:20 +02:00
Emir Pasic 9f6dbf940a add swap method on all lists 2015-03-14 00:36:10 +01:00
Emir Pasic bc2bc08324 binary heap 2015-03-13 02:07:44 +01:00
Emir Pasic 092a115642 - add swap method to arraylist (consider adding this on all lists) 2015-03-13 00:06:49 +01:00
Emir Pasic 133677039b change growth factor to doube 2015-03-10 23:30:00 +01:00
Emir Pasic c5826ac043 sorting on containers, lists and as a utils method (test+documentation) 2015-03-08 03:13:26 +01:00
emirpasic 756f33ad9a - cleanup reference in remove method of array list 2015-03-07 18:26:03 +01:00
emirpasic 8e5760a16e - make ArrayStack make use of our ArrayList
- add Values() method to stacks interface
- write tests
2015-03-07 18:19:58 +01:00
emirpasic 3aa0eeddfb ArrayList addition (inc. test, example and documentation) 2015-03-07 17:09:47 +01:00