public Enumerator(SmallDictionary <K, V> dict)
                    : this()
                {
                    var root = dict._root;

                    if (root != null)
                    {
                        // left == right only if both are nulls
                        if (root.Left == root.Right)
                        {
                            _next = dict._root;
                        }
                        else
                        {
                            _stack = new Stack <AvlNode>(dict.HeightApprox());
                            _stack.Push(dict._root);
                        }
                    }
                }
 public ValueCollection(SmallDictionary <K, V> dict)
 {
     _dict = dict;
 }
 public KeyCollection(SmallDictionary <K, V> dict)
 {
     _dict = dict;
 }