Skip to content

Commit 5a1b10e

Browse files
committed
Remove the incorrect default parameter in LocalTime.atDate (#502)
From 0.4.0 (dc5c965), we have `LocalTime.atDate` with the default value `0` for `dayOfMonth: Int`. This doesn't make any sense, though, as `0` is not a valid day, so `LocalTime(23, 59).atDate(2025, 3)` just fails. This commit removes the default value. Since it was impossible to call `atDate` without specifying the day and not fail, no valid code should stop compiling.
1 parent 98c3e53 commit 5a1b10e

File tree

3 files changed

+4
-6
lines changed

3 files changed

+4
-6
lines changed

core/api/kotlinx-datetime.api

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -439,11 +439,9 @@ public final class kotlinx/datetime/LocalTimeKt {
439439
public static final fun atDate (Lkotlinx/datetime/LocalTime;ILkotlinx/datetime/Month;I)Lkotlinx/datetime/LocalDateTime;
440440
public static final fun atDate (Lkotlinx/datetime/LocalTime;ILkotlinx/datetime/Month;ILkotlin/Unit;)Lkotlinx/datetime/LocalDateTime;
441441
public static final fun atDate (Lkotlinx/datetime/LocalTime;Lkotlinx/datetime/LocalDate;)Lkotlinx/datetime/LocalDateTime;
442-
public static synthetic fun atDate$default (Lkotlinx/datetime/LocalTime;IIIILjava/lang/Object;)Lkotlinx/datetime/LocalDateTime;
443442
public static synthetic fun atDate$default (Lkotlinx/datetime/LocalTime;IIILkotlin/Unit;ILjava/lang/Object;)Lkotlinx/datetime/LocalDateTime;
444443
public static synthetic fun atDate$default (Lkotlinx/datetime/LocalTime;ILjava/time/Month;IILjava/lang/Object;)Lkotlinx/datetime/LocalDateTime;
445444
public static synthetic fun atDate$default (Lkotlinx/datetime/LocalTime;ILjava/time/Month;ILkotlin/Unit;ILjava/lang/Object;)Lkotlinx/datetime/LocalDateTime;
446-
public static synthetic fun atDate$default (Lkotlinx/datetime/LocalTime;ILkotlinx/datetime/Month;IILjava/lang/Object;)Lkotlinx/datetime/LocalDateTime;
447445
public static synthetic fun atDate$default (Lkotlinx/datetime/LocalTime;ILkotlinx/datetime/Month;ILkotlin/Unit;ILjava/lang/Object;)Lkotlinx/datetime/LocalDateTime;
448446
public static final fun format (Lkotlinx/datetime/LocalTime;Lkotlinx/datetime/format/DateTimeFormat;)Ljava/lang/String;
449447
public static final fun toLocalTime (Ljava/lang/String;)Lkotlinx/datetime/LocalTime;

core/api/kotlinx-datetime.klib.api

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -881,9 +881,9 @@ final fun (kotlinx.datetime/LocalDate).kotlinx.datetime/yearsUntil(kotlinx.datet
881881
final fun (kotlinx.datetime/LocalDateTime).kotlinx.datetime/format(kotlinx.datetime.format/DateTimeFormat<kotlinx.datetime/LocalDateTime>): kotlin/String // kotlinx.datetime/format|[email protected](kotlinx.datetime.format.DateTimeFormat<kotlinx.datetime.LocalDateTime>){}[0]
882882
final fun (kotlinx.datetime/LocalDateTime).kotlinx.datetime/toInstant(kotlinx.datetime/TimeZone): kotlinx.datetime/Instant // kotlinx.datetime/toInstant|[email protected](kotlinx.datetime.TimeZone){}[0]
883883
final fun (kotlinx.datetime/LocalDateTime).kotlinx.datetime/toInstant(kotlinx.datetime/UtcOffset): kotlinx.datetime/Instant // kotlinx.datetime/toInstant|[email protected](kotlinx.datetime.UtcOffset){}[0]
884-
final fun (kotlinx.datetime/LocalTime).kotlinx.datetime/atDate(kotlin/Int, kotlin/Int, kotlin/Int = ...): kotlinx.datetime/LocalDateTime // kotlinx.datetime/atDate|[email protected](kotlin.Int;kotlin.Int;kotlin.Int){}[0]
884+
final fun (kotlinx.datetime/LocalTime).kotlinx.datetime/atDate(kotlin/Int, kotlin/Int, kotlin/Int): kotlinx.datetime/LocalDateTime // kotlinx.datetime/atDate|[email protected](kotlin.Int;kotlin.Int;kotlin.Int){}[0]
885885
final fun (kotlinx.datetime/LocalTime).kotlinx.datetime/atDate(kotlin/Int, kotlin/Int, kotlin/Int, kotlin/Unit = ...): kotlinx.datetime/LocalDateTime // kotlinx.datetime/atDate|[email protected](kotlin.Int;kotlin.Int;kotlin.Int;kotlin.Unit){}[0]
886-
final fun (kotlinx.datetime/LocalTime).kotlinx.datetime/atDate(kotlin/Int, kotlinx.datetime/Month, kotlin/Int = ...): kotlinx.datetime/LocalDateTime // kotlinx.datetime/atDate|[email protected](kotlin.Int;kotlinx.datetime.Month;kotlin.Int){}[0]
886+
final fun (kotlinx.datetime/LocalTime).kotlinx.datetime/atDate(kotlin/Int, kotlinx.datetime/Month, kotlin/Int): kotlinx.datetime/LocalDateTime // kotlinx.datetime/atDate|[email protected](kotlin.Int;kotlinx.datetime.Month;kotlin.Int){}[0]
887887
final fun (kotlinx.datetime/LocalTime).kotlinx.datetime/atDate(kotlin/Int, kotlinx.datetime/Month, kotlin/Int, kotlin/Unit = ...): kotlinx.datetime/LocalDateTime // kotlinx.datetime/atDate|[email protected](kotlin.Int;kotlinx.datetime.Month;kotlin.Int;kotlin.Unit){}[0]
888888
final fun (kotlinx.datetime/LocalTime).kotlinx.datetime/atDate(kotlinx.datetime/LocalDate): kotlinx.datetime/LocalDateTime // kotlinx.datetime/atDate|[email protected](kotlinx.datetime.LocalDate){}[0]
889889
final fun (kotlinx.datetime/LocalTime).kotlinx.datetime/format(kotlinx.datetime.format/DateTimeFormat<kotlinx.datetime/LocalTime>): kotlin/String // kotlinx.datetime/format|[email protected](kotlinx.datetime.format.DateTimeFormat<kotlinx.datetime.LocalTime>){}[0]

core/common/src/LocalTime.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -368,7 +368,7 @@ public fun String.toLocalTime(): LocalTime = LocalTime.parse(this)
368368
*
369369
* @sample kotlinx.datetime.test.samples.LocalTimeSamples.atDateComponentWiseMonthNumber
370370
*/
371-
public fun LocalTime.atDate(year: Int, month: Int, day: Int = 0): LocalDateTime =
371+
public fun LocalTime.atDate(year: Int, month: Int, day: Int): LocalDateTime =
372372
LocalDateTime(year, month, day, hour, minute, second, nanosecond)
373373

374374
/** @suppress */
@@ -392,7 +392,7 @@ public fun LocalTime.atDate(year: Int, monthNumber: Int, dayOfMonth: Int, fakeAr
392392
*
393393
* @sample kotlinx.datetime.test.samples.LocalTimeSamples.atDateComponentWise
394394
*/
395-
public fun LocalTime.atDate(year: Int, month: Month, day: Int = 0): LocalDateTime =
395+
public fun LocalTime.atDate(year: Int, month: Month, day: Int): LocalDateTime =
396396
LocalDateTime(year, month, day, hour, minute, second, nanosecond)
397397

398398
/** @suppress */

0 commit comments

Comments
 (0)