Z.Expressions.ListDictionary.TryGetValue C# (CSharp) Method

TryGetValue() public method

public TryGetValue ( object key, object &value ) : bool
key object
value object
return bool
        public bool TryGetValue(object key, out object value)
        {
            if (key == null)
            {
                throw new ArgumentNullException("key", "error");
            }
            var node = head;
            if (comparer == null)
            {
                while (node != null)
                {
                    var oldKey = node.key;
                    if (oldKey != null && oldKey.Equals(key))
                    {
                        value = node.value;
                        return true;
                    }
                    node = node.next;
                }
            }
            else
            {
                while (node != null)
                {
                    var oldKey = node.key;
                    if (oldKey != null && comparer.Compare(oldKey, key) == 0)
                    {
                        value = node.value;
                        return true;
                    }
                    node = node.next;
                }
            }

            value = null;
            return false;
        }