My current (untested) find method is: bool find (Key k, Node!(Key, Data) t) { if (level == 0) return false; if (k < t.key) return find (k, t.left); if (t.key < k) return find (k, t.right); return true; }
but I'd really rather have it be an "in" method.