TemporalZ

withCalendar

Returns a new PlainDateTime with a different calendar.

Parameters

#
self:PlainDateTime
PlainDateTime
calendar:[]const u8
[]const u8

Source

Implementation

#
pub fn withCalendar(self: PlainDateTime, calendar: []const u8) !PlainDateTime {
    const cal_view = abi.toDiplomatStringView(calendar);
    const cal_result = abi.c.temporal_rs_AnyCalendarKind_parse_temporal_calendar_string(cal_view);
    const cal_kind = try abi.extractResult(cal_result);
    const ptr = abi.c.temporal_rs_PlainDateTime_with_calendar(self._inner, cal_kind) orelse return abi.TemporalError.Generic;

    return .{ ._inner = ptr };
}