module utility.hash; void merge_hash(string[string] hash, string[string] defaults) { foreach(string key, string value; defaults) { hash[key] = hash.get(key, value); } } unittest { import dunit.toolkit; string[string] defaults = [ "foo": "bar", "buzz": "back" ]; defaults["foo"].assertEqual("bar"); string[string] options = [ "foo": "bazz" ]; options["foo"].assertEqual("bazz"); merge_hash(options, defaults); options["buzz"].assertEqual("back"); }