public IntegralTypeInfo( [NotNull] Type systemType, [NotNull] IntegralTypeValueRange valueRange, [NotNull] IntegralTypeSizeInfo size) : base( systemType) { valueRange.IsNotNull(nameof(valueRange)); size.IsNotNull(nameof(size)); ValueRange = valueRange; Size = size; }
private static IntegralTypeValueRange buildValueRange( Type systemType) { var minValue = systemType .GetField(minValueFieldName) .GetValue(null) .To <long>(); var maxValue = systemType .GetField(maxValueFieldName) .GetValue(null) .To <ulong>(); var valueRange = new IntegralTypeValueRange( minValue, maxValue); return(valueRange); }