private void Snap(T2 current) { var snapValue = this.isBackwise ? begin : end; if (!plugin.Equals(snapValue, current)) { setter(plugin.Convert(snapValue)); } }