/// <summary> /// Initializes a new instance of the <see cref="IndexedValueRuleTable" /> class. /// </summary> /// <param name="valueRuleSignature">The value rule signature.</param> /// <exception cref="ArgumentNullException">If any parameter is <c>null</c>.</exception> public IndexedValueRuleTable(IValueRuleSignature valueRuleSignature) : base(GetDimensions(valueRuleSignature).ToArray()) { if (valueRuleSignature == null) { throw new ArgumentNullException("valueRuleSignature"); } this.valueRuleSignature = valueRuleSignature; }
/// <summary> /// Gets the dimensions of the specified value rule signature. /// </summary> /// <param name="signature">The signature.</param> /// <returns>The dimensions.</returns> private static IEnumerable <IProperty> GetDimensions(IValueRuleSignature signature) { return(signature.DimensionInputProperties); }