Nathan Sashihara 
							
						 
					 
					
						
						
							
						
						6b22cd60df 
					 
					
						
						
							
							take(take(range,...),n) is take(range, n) and use slicing in take like in takeExactly  
						
						... 
						
						
						
						Also take!R is the same as takeExactly!R when isInfinite!R. 
						
						
					 
					
						2018-11-05 22:49:10 -05:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						184d307e40 
					 
					
						
						
							
							Add range primitive sameHead  
						
						
						
						
					 
					
						2018-11-04 06:31:38 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8aec781e2a 
					 
					
						
						
							
							memory.op.equal: Fix parameter documentation  
						
						
						
						
					 
					
						2018-10-30 12:57:09 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1e46109e50 
					 
					
						
						
							
							algorithm.mutation.destroyAll: New  
						
						... 
						
						
						
						Fix  #71 . 
					
						2018-10-29 11:14:33 +01:00 
						 
				 
			
				
					
						
							
							
								Nathan Sashihara 
							
						 
					 
					
						
						
							
						
						b230685595 
					 
					
						
						
							
							Add FNV constants for size_t == ucent  
						
						
						
						
					 
					
						2018-10-25 07:07:29 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ff58b5e81c 
					 
					
						
						
							
							Add algorithm.mutation.initializeAll  
						
						
						
						
					 
					
						2018-10-24 08:14:15 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						373a192b3a 
					 
					
						
						
							
							Make hasLvalueElements work with non-copyable  
						
						
						
						
					 
					
						2018-10-22 08:39:38 +02:00 
						 
				 
			
				
					
						
							
							
								Nathan Sashihara 
							
						 
					 
					
						
						
							
						
						4e8c9bd28f 
					 
					
						
						
							
							Use new __traits(isZeroInit) to check for a null initializer at compile time instead of runtime  
						
						
						
						
					 
					
						2018-10-21 18:52:02 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3b5709821a 
					 
					
						
						
							
							Add algorithm.mutation.uninitializedFill  
						
						
						
						
					 
					
						2018-10-20 10:42:01 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a04a04bb96 
					 
					
						
						
							
							conv.emplace: Don't call a destructor  
						
						... 
						
						
						
						Don't call the destructor on uninitialized elements. 
						
						
					 
					
						2018-10-14 11:30:02 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6d01680685 
					 
					
						
						
							
							conv.emplace: Fix emplacing structs w/o this()  
						
						
						
						
					 
					
						2018-10-08 17:51:59 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4f9927a8c3 
					 
					
						
						
							
							Add algorithm.mutation.fill()  
						
						
						
						
					 
					
						2018-10-06 16:00:08 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a8b18d7603 
					 
					
						
						
							
							Deprecate Entropy (leaving platform sources alone)  
						
						... 
						
						
						
						Also introduces unavoidable breaking change in EntropySource interface:
poll() returns Option!ubyte instead of Nullable. 
						
						
					 
					
						2018-10-05 13:23:57 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9364112690 
					 
					
						
						
							
							net.ip: Parse embedded Ipv4.  Fix   #64  
						
						
						
						
					 
					
						2018-10-03 20:49:14 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						772e87739c 
					 
					
						
						
							
							Replace memory.op.cmp with optimized equal version  
						
						... 
						
						
						
						Deprecate cmp.
Fix  #68 . 
						
						
					 
					
						2018-10-02 08:55:29 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						2a90a812db 
					 
					
						
						
							
							Add algorithm.searching.count  
						
						
						
						
					 
					
						2018-09-30 15:25:10 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e68fcc3a38 
					 
					
						
						
							
							Remove code deprecated in 0.11.2 and earlier  
						
						... 
						
						
						
						- conv.to!String
- meta.metafunction.Tuple
- range.adapter.take
- range.adapter.takeExactly
- range.primitive: put()-ting input range into an output one 
						
						
					 
					
						2018-09-29 09:00:43 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c5eb2f27be 
					 
					
						
						
							
							Add algorithm.iteration  
						
						
						
						
					 
					
						2018-09-28 05:40:33 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						fd133554f3 
					 
					
						
						
							
							net.ip: Implement opCmp.  Fix   #63  
						
						
						
						
					 
					
						2018-09-24 06:45:44 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9ac56c50f1 
					 
					
						
						
							
							typecons: Add option constructor function  
						
						
						
						
					 
					
						2018-09-23 06:59:41 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						03b45ae441 
					 
					
						
						
							
							Add typecons.tuple(), Tuple construction function  
						
						
						
						
					 
					
						2018-09-22 07:32:30 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						31d4f30a49 
					 
					
						
						
							
							functional.forward: Fix template visibility bug  
						
						... 
						
						
						
						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-21 06:23:59 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						180c4d3956 
					 
					
						
						
							
							typecons.Option: Implement toHash forwarder  
						
						
						
						
					 
					
						2018-09-18 22:27:54 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b0dc7b59e5 
					 
					
						
						
							
							Add predicate support for algorithm.comparison.equal  
						
						
						
						
					 
					
						2018-09-17 19:17:39 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						eb796e0ddf 
					 
					
						
						
							
							Add bitmanip.BitFlags  
						
						
						
						
					 
					
						2018-09-16 19:07:55 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e5569e5fea 
					 
					
						
						
							
							meta.trait.EnumMembers: Fix one-member enums  
						
						... 
						
						
						
						Produce a tuple for an enum with only one member. 
						
						
					 
					
						2018-09-15 06:06:17 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b831a05407 
					 
					
						
						
							
							Introduce hash.lookup.isHashFunction trait  
						
						... 
						
						
						
						Fix  #66 . 
					
						2018-09-14 15:16:08 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b6d1766d58 
					 
					
						
						
							
							Implement compare algorithm.  Fix   #50  
						
						
						
						
					 
					
						2018-09-11 10:05:15 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7f080831c5 
					 
					
						
						
							
							Implement IPv6 parser,  fix   #49  
						
						
						
						
					 
					
						2018-09-08 07:20:23 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						94c7fd2231 
					 
					
						
						
							
							Move range.adapter to algorithms + take() bugfixes  
						
						... 
						
						
						
						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-06 12:50:42 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5ba6d35a1b 
					 
					
						
						
							
							Use fixed dscanner version  
						
						
						
						
					 
					
						2018-09-03 09:55:19 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						09f434f631 
					 
					
						
						
							
							net.iface: Add indexToName  
						
						
						
						
					 
					
						2018-09-02 10:00:52 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1f615301e5 
					 
					
						
						
							
							memory.op: Add findNullTerminated  
						
						
						
						
					 
					
						2018-09-02 08:27:26 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						131675d0a8 
					 
					
						
						
							
							Parse for the main part of an IPv6 address  
						
						
						
						
					 
					
						2018-09-01 11:02:10 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						aa12aa9014 
					 
					
						
						
							
							Add module for network interfaces  
						
						
						
						
					 
					
						2018-09-01 10:15:23 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						41878cde50 
					 
					
						
						
							
							Fix   #60 : Copying overlapping array slices  
						
						
						
						
					 
					
						2018-08-30 07:12:38 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0fc0aa23f7 
					 
					
						
						
							
							Add constants and syscall for if_nametoindex  
						
						
						
						
					 
					
						2018-08-28 20:39:45 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8ca88d1f01 
					 
					
						
						
							
							net.ip.Address4: Reject malformed addresses  
						
						
						
						
					 
					
						2018-08-22 06:51:20 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4653e94fa1 
					 
					
						
						
							
							Merge remote-tracking branch 'n8sh/relax-hasher-reqs'  
						
						
						
						
					 
					
						2018-08-12 06:17:12 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ba5833318b 
					 
					
						
						
							
							conv: Fix taking out of range chars for hex values  
						
						
						
						
					 
					
						2018-08-11 14:42:09 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						918d8f5450 
					 
					
						
						
							
							Deprecated putting an input into an output range  
						
						... 
						
						
						
						Use copy instead. 
						
						
					 
					
						2018-08-10 15:34:07 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						aa4ccddf47 
					 
					
						
						
							
							Add net.ip.  Fix   #48  
						
						
						
						
					 
					
						2018-08-07 22:27:09 +02:00 
						 
				 
			
				
					
						
							
							
								Nathan Sashihara 
							
						 
					 
					
						
						
							
						
						22cffe9d6e 
					 
					
						
						
							
							Set: allow hasher to take arg by ref  
						
						
						
						
					 
					
						2018-08-06 14:41:47 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						abd286064b 
					 
					
						
						
							
							Add algorithm.mutation.copy  
						
						
						
						
					 
					
						2018-08-05 07:19:30 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						b04928d2c8 
					 
					
						
						
							
							net.inet: Import range.array as well  
						
						
						
						
					 
					
						2018-08-03 16:52:34 +02:00 
						 
				 
			
				
					
						
							
							
								Nathan Sashihara 
							
						 
					 
					
						
						
							
						
						ceb8e6a113 
					 
					
						
						
							
							Use identity hash for integers and pointers  
						
						... 
						
						
						
						This is appropriate because HashArray in tanya.container.entry uses
prime numbers instead of powers of 2 for its number of buckets so there
is no pitfall if the hashes are all multiples of some power of 2. 
						
						
					 
					
						2018-08-02 12:37:02 -04:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						900a7172bf 
					 
					
						
						
							
							Make format() public  
						
						... 
						
						
						
						Make format() public. Deprecate to!String. 
						
						
					 
					
						2018-08-01 16:58:23 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						fe0576a2d6 
					 
					
						
						
							
							Fix format printing only the first argument  
						
						
						
						
					 
					
						2018-07-29 12:51:38 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a5b84deca7 
					 
					
						
						
							
							format: Add errol3 lookup  
						
						
						
						
					 
					
						2018-07-28 13:52:59 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						24056d53c5 
					 
					
						
						
							
							network.socket.Linger.enabled: Add return type  
						
						... 
						
						
						
						network.socket.Linger.enabled: Add missing return type (void). 
						
						
					 
					
						2018-07-25 05:40:49 +02:00