Beispiel #1
0
        /// <summary>
        /// Returns a MemberwiseClone of this object
        /// with the guarantee that the tail argument
        /// will be the last tokenizer in the new
        /// tokenizer chain.
        /// </summary>
        /// <param name="tail">the last tokenizer for the
        /// new chain</param>
        /// <returns>cloned chain with tail as the
        /// last tokenizer in the chain</returns>
        public ITokenizer Clone(ITokenizer tail)
        {
            AbstractFilter clone = MemberwiseClone() as AbstractFilter;

            if (null == _previous)
            {
                clone._previous = tail;
            }
            else
            {
                clone._previous = _previous.Clone(tail);
            }
            return(clone);
        }