Skip to content

Commit

Permalink
refactor!: remove DateOnly.Deconstruct
Browse files Browse the repository at this point in the history
  • Loading branch information
oliverbooth committed Nov 14, 2024
1 parent 027f6f2 commit bdef9b1
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 39 deletions.
4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Removed

- X10D: Removed `DateOnly.Deconstruct` due to conflict with
[`System.DateOnly.Deconstruct`](https://learn.microsoft.com/en-us/dotnet/api/system.datetime.deconstruct?view=net-8.0).
- X10D: Removed `Span<T>.Split` for .NET 9.0 target due to conflicts with
[`System.MemoryExtensions.Split`](https://learn.microsoft.com/en-us/dotnet/api/system.memoryextensions.split?view=net-8.0).
[`System.MemoryExtensions.Split`](https://learn.microsoft.com/en-us/dotnet/api/system.memoryextensions.split?view=net-9.0).

## [4.0.0] - 2024-06-12

Expand Down
24 changes: 0 additions & 24 deletions X10D.Tests/src/Time/DateOnlyTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,30 +39,6 @@ public void Age_ShouldBe18_Given31December1991Birthday_And31December2017Date()
Assert.That(age, Is.EqualTo(18));
}

[Test]
public void Deconstruct_ShouldDeconstruct_GivenDateOnly()
{
var date = new DateOnly(2017, 12, 31);

date.Deconstruct(out int year, out int month, out int day);

Assert.That(year, Is.EqualTo(2017));
Assert.That(month, Is.EqualTo(12));
Assert.That(day, Is.EqualTo(31));
}

[Test]
public void Deconstruct_ShouldDeconstructToTuple_GivenDateOnly()
{
var date = new DateOnly(2017, 12, 31);

(int year, int month, int day) = date;

Assert.That(year, Is.EqualTo(2017));
Assert.That(month, Is.EqualTo(12));
Assert.That(day, Is.EqualTo(31));
}

[Test]
public void First_ShouldBeSaturday_Given1Jan2000()
{
Expand Down
14 changes: 0 additions & 14 deletions X10D/src/Time/DateOnlyExtensions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -39,20 +39,6 @@ public static int Age(this DateOnly value, DateOnly referenceDate)
return value.ToDateTime(default).Age(referenceDate.ToDateTime(default));
}

/// <summary>
/// Deconstructs the current <see cref="DateOnly" /> into its year, month, and day.
/// </summary>
/// <param name="value">The date to deconstruct.</param>
/// <param name="year">When this method returns, contains the year.</param>
/// <param name="month">When this method returns, contains the month.</param>
/// <param name="day">When this method returns, contains the day.</param>
public static void Deconstruct(this DateOnly value, out int year, out int month, out int day)
{
year = value.Year;
month = value.Month;
day = value.Day;
}

/// <summary>
/// Gets a date representing the first occurence of a specified day of the week in the current month.
/// </summary>
Expand Down

0 comments on commit bdef9b1

Please sign in to comment.