/// <summary> /// Return a new KeyPath with the element resolved to the specified <see cref="IKeyPathElement"/>. /// </summary> /// <param name="element"></param> /// <returns></returns> internal KeyPath Resolve(IKeyPathElement element) { var keyPath = new KeyPath(this) { _resolvedElement = element }; return(keyPath); }
/// <summary> /// Copy constructor. Copies keys as well. /// </summary> /// <param name="keyPath"></param> private KeyPath(KeyPath keyPath) { _keys = new List <string>(keyPath._keys); _resolvedElement = keyPath._resolvedElement; }