/// <summary> /// Creates a new <see cref="IMetroHash128"/> instance with given configuration. /// </summary> /// <param name="config">The configuration to use.</param> /// <returns> /// A <see cref="IMetroHash128" /> instance. /// </returns> /// <exception cref="ArgumentNullException"><paramref name="config"/></exception> public override IMetroHash128 Create(IMetroHashConfig config) { if (config == null) { throw new ArgumentNullException(nameof(config)); } return(new MetroHash128_Implementation(config)); }
public MetroHash64_Implementation(IMetroHashConfig config) { if (config == null) { throw new ArgumentNullException(nameof(config)); } _config = config.Clone(); }
/// <summary> /// Creates a new <typeparamref name="TMetroHash"/> instance with given configuration. /// </summary> /// <param name="config">The configuration to use.</param> /// <returns> /// A <see cref="IMetroHash" /> instance. /// </returns> /// <exception cref="ArgumentNullException"><paramref name="config"/></exception> public abstract TMetroHash Create(IMetroHashConfig config);
/// <summary> /// Creates a new <see cref="IMetroHash"/> instance with given configuration. /// </summary> /// <param name="config">The configuration to use.</param> /// <returns> /// A <see cref="IMetroHash" /> instance. /// </returns> /// <exception cref="ArgumentNullException"><paramref name="config"/></exception> IMetroHash IMetroHashFactory.Create(IMetroHashConfig config) => Create(config);
public override IMetroHash Create(IMetroHashConfig config) => _createWithConfig(config);