/// <summary>
        /// Adds the specified name to the list of names searching for (<see cref="names"/>).
        /// </summary>
        public void AddNameCriteria(string name)
        {
            HashSetPool <string> .GetIfNull(ref this.names);

            this.names.Add(name);
        }
        /// <summary>
        /// Non-generic version of <see cref="AddTypeCriteria{T}"/>.
        /// </summary>
        public void AddTypeCriteria(Type type)
        {
            HashSetPool <Type> .GetIfNull(ref this.types);

            this.types.Add(type);
        }