/// <summary>
        /// Initializes a new instance of the <see cref="BuildListEventArgs{T}"/>
        /// class with the given parameters.
        /// </summary>
        /// <param name="change">The type of the change.</param>
        /// <param name="item">The item affected by the change.</param>
        /// <param name="replacement">
        /// A replacement for the affected item, where available or applicable.
        /// </param>
        /// <param name="index">
        /// The zero-based index at which the change is occurring.
        /// </param>
        public BuildListEventArgs(BuildListChangeType change,
                                  T item, T replacement, int index, string name)
            : this(change, item, replacement, index)
        {
            BuildExceptions.NotNullNotEmpty(name, "name");

            _name = name;
        }
 /// <summary>
 /// Initializes a new instance of the <see cref="BuildListEventArgs{T}"/>
 /// class with the given parameters.
 /// </summary>
 /// <param name="change">The type of the change.</param>
 /// <param name="item">The item affected by the change.</param>
 /// <param name="replacement">
 /// A replacement for the affected item, where available or applicable.
 /// </param>
 /// <param name="index">
 /// The zero-based index at which the change is occurring.
 /// </param>
 public BuildListEventArgs(BuildListChangeType change,
                           T item, T replacement, int index)
 {
     _index        = index;
     _changeType   = change;
     _changedItem  = item;
     _replacedWith = replacement;
 }