| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2018-12-18 | container.array: Fix assigning non-copyable valuesv0.14.0 | Eugen Wissner | |
| Fix #59. | |||
| 2018-12-17 | Update dmd to 2.083.1 | Eugen Wissner | |
| 2018-11-24 | Make containers work with non-copyable elements | Eugen Wissner | |
| It is the first step. The containers can be at least created with non-copyable structs without compilation errors now. Fix #69. | |||
| 2018-11-23 | Fix emplacing POD structs | Eugen Wissner | |
| 2018-11-19 | range.primitive: Support non copyable elements | Eugen Wissner | |
| ... in all ranges. | |||
| 2018-11-18 | Add test.stub. Fix #51 | Eugen Wissner | |
| 2018-11-13 | Disable length when taking from a lengthless range | Eugen Wissner | |
| Fix #79. | |||
| 2018-11-12 | Add algorithm.mutation.rotate | Eugen Wissner | |
| 2018-11-11 | Add support for DMD 2.083.0 | Eugen Wissner | |
| 2018-11-07 | Merge remote-tracking branch 'n8sh/take-slice' | Eugen Wissner | |
| 2018-11-06 | Merge remote-tracking branch 'retro-retro' | Eugen Wissner | |
| 2018-11-05 | take(take(range,...),n) is take(range, n) and use slicing in `take` like in ↵ | Nathan Sashihara | |
| `takeExactly` Also take!R is the same as takeExactly!R when isInfinite!R. | |||
| 2018-11-05 | retro(retro(range)) is range | Nathan Sashihara | |
| 2018-11-05 | Use inout in tanya.range.array functions | Nathan Sashihara | |
| This is to reduce distinct generated functions in final executable. Also add `scope` and `return` to function parameters. | |||
| 2018-11-04 | Add range primitive sameHead | Eugen Wissner | |
| 2018-10-30 | memory.op.equal: Fix parameter documentation | Eugen Wissner | |
| 2018-10-29 | algorithm.mutation.destroyAll: Newv0.13.0 | Eugen Wissner | |
| Fix #71. | |||
| 2018-10-25 | Merge pull request #74 from n8sh/128-bit-fnv | Eugene Wissner | |
| Add FNV constants for size_t == ucent | |||
| 2018-10-25 | Add FNV constants for size_t == ucent | Nathan Sashihara | |
| 2018-10-24 | Add algorithm.mutation.initializeAll | Eugen Wissner | |
| 2018-10-22 | Make hasLvalueElements work with non-copyable | Eugen Wissner | |
| 2018-10-21 | Use new __traits(isZeroInit) to check for a null initializer at compile time ↵ | Nathan Sashihara | |
| instead of runtime | |||
| 2018-10-20 | Add algorithm.mutation.uninitializedFill | Eugen Wissner | |
| 2018-10-14 | conv.emplace: Don't call a destructor | Eugen Wissner | |
| Don't call the destructor on uninitialized elements. | |||
| 2018-10-12 | Update dmd to 2.082.1, Update GDC .gitignore | Eugen Wissner | |
| 2018-10-08 | conv.emplace: Fix emplacing structs w/o this() | Eugen Wissner | |
| 2018-10-06 | Add algorithm.mutation.fill() | Eugen Wissner | |
| 2018-10-05 | Deprecate Entropy (leaving platform sources alone) | Eugen Wissner | |
| Also introduces unavoidable breaking change in EntropySource interface: poll() returns Option!ubyte instead of Nullable. | |||
| 2018-10-03 | net.ip: Parse embedded Ipv4. Fix #64 | Eugen Wissner | |
| 2018-10-02 | Replace memory.op.cmp with optimized equal version | Eugen Wissner | |
| Deprecate cmp. Fix #68. | |||
| 2018-09-30 | Add algorithm.searching.count | Eugen Wissner | |
| 2018-09-29 | Remove code deprecated in 0.11.2 and earlier | Eugen Wissner | |
| - conv.to!String - meta.metafunction.Tuple - range.adapter.take - range.adapter.takeExactly - range.primitive: put()-ting input range into an output one | |||
| 2018-09-28 | Add algorithm.iterationv0.12.0 | Eugen Wissner | |
| 2018-09-26 | Create separate travis job for D-Scanner | Eugen Wissner | |
| 2018-09-24 | net.ip: Implement opCmp. Fix #63 | Eugen Wissner | |
| 2018-09-23 | typecons: Add option constructor function | Eugen Wissner | |
| 2018-09-22 | Add typecons.tuple(), Tuple construction function | Eugen Wissner | |
| 2018-09-21 | functional.forward: Fix template visibility bug | Eugen Wissner | |
| Because of the private template forwardOne, forward couldn't be used in other modules. forwardOne cannot be a local template either since it accepts an alias as its template parameter. | |||
| 2018-09-18 | typecons.Option: Implement toHash forwarder | Eugen Wissner | |
| 2018-09-17 | Add predicate support for algorithm.comparison.equal | Eugen Wissner | |
| 2018-09-16 | Add bitmanip.BitFlags | Eugen Wissner | |
| 2018-09-15 | meta.trait.EnumMembers: Fix one-member enums | Eugen Wissner | |
| Produce a tuple for an enum with only one member. | |||
| 2018-09-14 | Introduce hash.lookup.isHashFunction trait | Eugen Wissner | |
| Fix #66. | |||
| 2018-09-11 | Implement compare algorithm. Fix #50 | Eugen Wissner | |
| 2018-09-08 | Implement IPv6 parser, fix #49v0.11.2 | Eugen Wissner | |
| 2018-09-06 | Move range.adapter to algorithms + take() bugfixes | Eugen Wissner | |
| A lot of algorithms like lazy sort() can be also classified as adapters since it wraps the original range and allows to access the elements of the range in a particular order. The only reason why take() was in range.adapter is that take() is trivial - it doesn't change the order of elements but can turn an infinite range into finite one. This distinction between trivial and non-trivial algorithms isn't absolutely clear. So let us put all algorithms and any adapters that change the range iteration in some way into "algorithm" package to avoid any confusion later. - range.adapter is renamed into algorithm.iteration - range.adapter is deprecated - Added missing imports for take() and takeExactly() - takeExactly() doesn't wrap ranges that have slicing anymore - Voldemort structs for take() takeExactly() are now static | |||
| 2018-09-03 | Use fixed dscanner version | Eugen Wissner | |
| 2018-09-02 | net.iface: Add indexToName | Eugen Wissner | |
| 2018-09-02 | memory.op: Add findNullTerminated | Eugen Wissner | |
| 2018-09-01 | Parse for the main part of an IPv6 address | Eugen Wissner | |
