| 
									
										
										
										
											2016-05-28 20:09:49 +01:00
										 |  |  | def deep_merge_hashes(hash1, hash2) | 
					
						
							| 
									
										
										
										
											2016-09-11 17:47:04 +01:00
										 |  |  |   merger = proc do |_key, v1, v2| | 
					
						
							|  |  |  |     if v1.is_a?(Hash) && v2.is_a?(Hash) | 
					
						
							| 
									
										
										
										
											2016-05-28 20:09:49 +01:00
										 |  |  |       v1.merge v2, &merger | 
					
						
							|  |  |  |     else | 
					
						
							|  |  |  |       v2 | 
					
						
							|  |  |  |     end | 
					
						
							|  |  |  |   end | 
					
						
							|  |  |  |   hash1.merge hash2, &merger | 
					
						
							|  |  |  | end |