@@ -44,18 +44,20 @@ namespace System
44
44
[ StructLayout ( LayoutKind . Auto ) ]
45
45
[ Serializable ]
46
46
[ System . Runtime . CompilerServices . TypeForwardedFrom ( "mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" ) ]
47
- public readonly partial struct DateTime : IComparable , ISpanFormattable , IConvertible , IComparable < DateTime > , IEquatable < DateTime > , ISerializable
48
- #if FEATURE_GENERIC_MATH
49
- #pragma warning disable SA1001 , CA2252 // SA1001: Comma positioning; CA2252: Preview Features
50
- , IAdditionOperators < DateTime , TimeSpan , DateTime > ,
47
+ public readonly partial struct DateTime
48
+ : IComparable ,
49
+ ISpanFormattable ,
50
+ IConvertible ,
51
+ IComparable < DateTime > ,
52
+ IEquatable < DateTime > ,
53
+ ISerializable ,
54
+ IAdditionOperators < DateTime , TimeSpan , DateTime > ,
51
55
IAdditiveIdentity < DateTime , TimeSpan > ,
52
56
IComparisonOperators < DateTime , DateTime > ,
53
57
IMinMaxValue < DateTime > ,
54
58
ISpanParseable < DateTime > ,
55
59
ISubtractionOperators < DateTime , TimeSpan , DateTime > ,
56
60
ISubtractionOperators < DateTime , DateTime , TimeSpan >
57
- #pragma warning restore SA1001 , CA2252
58
- #endif // FEATURE_GENERIC_MATH
59
61
{
60
62
// Number of 100ns ticks per time unit
61
63
private const long TicksPerMillisecond = 10000 ;
@@ -1500,112 +1502,91 @@ internal static bool TryCreate(int year, int month, int day, int hour, int minut
1500
1502
return true ;
1501
1503
}
1502
1504
1503
- #if FEATURE_GENERIC_MATH
1504
1505
//
1505
1506
// IAdditionOperators
1506
1507
//
1507
1508
1508
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1509
1509
static DateTime IAdditionOperators < DateTime , TimeSpan , DateTime > . operator + ( DateTime left , TimeSpan right )
1510
1510
=> left + right ;
1511
1511
1512
- // [RequiresPreviewFeatures(Number.PreviewFeatureMessage, Url = Number.PreviewFeatureUrl)]
1513
1512
// static checked DateTime IAdditionOperators<DateTime, TimeSpan, DateTime>.operator +(DateTime left, TimeSpan right)
1514
1513
// => checked(left + right);
1515
1514
1516
1515
//
1517
1516
// IAdditiveIdentity
1518
1517
//
1519
1518
1520
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1521
1519
static TimeSpan IAdditiveIdentity < DateTime , TimeSpan > . AdditiveIdentity
1522
1520
=> default ;
1523
1521
1524
1522
//
1525
1523
// IComparisonOperators
1526
1524
//
1527
1525
1528
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1529
1526
static bool IComparisonOperators < DateTime , DateTime > . operator < ( DateTime left , DateTime right )
1530
1527
=> left < right ;
1531
1528
1532
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1533
1529
static bool IComparisonOperators < DateTime , DateTime > . operator <= ( DateTime left , DateTime right )
1534
1530
=> left <= right ;
1535
1531
1536
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1537
1532
static bool IComparisonOperators < DateTime , DateTime > . operator > ( DateTime left , DateTime right )
1538
1533
=> left > right ;
1539
1534
1540
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1541
1535
static bool IComparisonOperators < DateTime , DateTime > . operator >= ( DateTime left , DateTime right )
1542
1536
=> left >= right ;
1543
1537
1544
1538
//
1545
1539
// IEqualityOperators
1546
1540
//
1547
1541
1548
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1549
1542
static bool IEqualityOperators < DateTime , DateTime > . operator == ( DateTime left , DateTime right )
1550
1543
=> left == right ;
1551
1544
1552
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1553
1545
static bool IEqualityOperators < DateTime , DateTime > . operator != ( DateTime left , DateTime right )
1554
1546
=> left != right ;
1555
1547
1556
1548
//
1557
1549
// IMinMaxValue
1558
1550
//
1559
1551
1560
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1561
1552
static DateTime IMinMaxValue < DateTime > . MinValue => MinValue ;
1562
1553
1563
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1564
1554
static DateTime IMinMaxValue < DateTime > . MaxValue => MaxValue ;
1565
1555
1566
1556
//
1567
1557
// IParseable
1568
1558
//
1569
1559
1570
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1571
1560
static DateTime IParseable < DateTime > . Parse ( string s , IFormatProvider ? provider )
1572
1561
=> Parse ( s , provider ) ;
1573
1562
1574
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1575
1563
static bool IParseable < DateTime > . TryParse ( [ NotNullWhen ( true ) ] string ? s , IFormatProvider ? provider , out DateTime result )
1576
1564
=> TryParse ( s , provider , DateTimeStyles . None , out result ) ;
1577
1565
1578
1566
//
1579
1567
// ISpanParseable
1580
1568
//
1581
1569
1582
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1583
1570
static DateTime ISpanParseable < DateTime > . Parse ( ReadOnlySpan < char > s , IFormatProvider ? provider )
1584
1571
=> Parse ( s , provider , DateTimeStyles . None ) ;
1585
1572
1586
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1587
1573
static bool ISpanParseable < DateTime > . TryParse ( ReadOnlySpan < char > s , IFormatProvider ? provider , out DateTime result )
1588
1574
=> TryParse ( s , provider , DateTimeStyles . None , out result ) ;
1589
1575
1590
1576
//
1591
1577
// ISubtractionOperators
1592
1578
//
1593
1579
1594
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1595
1580
static DateTime ISubtractionOperators < DateTime , TimeSpan , DateTime > . operator - ( DateTime left , TimeSpan right )
1596
1581
=> left - right ;
1597
1582
1598
- // [RequiresPreviewFeatures(Number.PreviewFeatureMessage, Url = Number.PreviewFeatureUrl)]
1599
1583
// static checked DateTime ISubtractionOperators<DateTime, TimeSpan, DateTime>.operator -(DateTime left, TimeSpan right)
1600
1584
// => checked(left - right);
1601
1585
1602
- [ RequiresPreviewFeatures ( Number . PreviewFeatureMessage , Url = Number . PreviewFeatureUrl ) ]
1603
1586
static TimeSpan ISubtractionOperators < DateTime , DateTime , TimeSpan > . operator - ( DateTime left , DateTime right )
1604
1587
=> left - right ;
1605
1588
1606
- // [RequiresPreviewFeatures(Number.PreviewFeatureMessage, Url = Number.PreviewFeatureUrl)]
1607
1589
// static checked TimeSpan ISubtractionOperators<DateTime, DateTime, TimeSpan>.operator -(DateTime left, DateTime right)
1608
1590
// => checked(left - right);
1609
- #endif // FEATURE_GENERIC_MATH
1610
1591
}
1611
1592
}
0 commit comments