/// <summary>
 /// Gets the value that is associated with the specified key.
 /// </summary>
 /// <param name="key">The key to locate.</param>
 /// <param name="value">When this method returns, the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized.</param>
 /// <returns>true if the object that implements the <see cref="T:System.Collections.Generic.IReadOnlyDictionary`2"></see> interface contains an element that has the specified key; otherwise, false.</returns>
 public bool TryGetValue(string key, out QueryVariable value)
 {
     return(_variables.TryGetValue(key, out value));
 }
 /// <summary>
 /// Adds a parsed variable to this collection.
 /// </summary>
 /// <param name="variable">The variable to add.</param>
 public void AddVariable(QueryVariable variable)
 {
     Validation.ThrowIfNull(variable, nameof(variable));
     _variables.Add(variable.Name, variable);
 }