public IOperation Build()
            {
                Debug.Assert(_canBuild, ErrorMessages.InvalidOperation);

                var operation = _sender.GenerateSetPropertyOperation(_propertyName, _newValue, _throttleTimeSpan);

                operation.Message = _name;
                return(_eventEventBinder.BindEvents(operation));
            }
            public IOperation Build()
            {
                Debug.Assert(_canBuild, ErrorMessages.InvalidOperation);
                var operation = new MergeableOperation <T>(_function, _new, _prev, _mergeJudge)
                {
                    Message = _name
                };

                return(_eventEventBinder.BindEvents(operation));
            }