My sincerest apologies, my initial solution is flawed due to a foolish oversight. The below version works.

```d
bool contains(M, K...)(M map, K keys)
if (K.length > 0) {
  static if (K.length == 1)
    return (keys[0] in map) !is null;
  else
return (keys[0] in map) !is null && contains(map[keys[0]], keys[1 .. $]);
}
```


Reply via email to