TemporalZ

with

Returns a new PlainTime with some fields replaced by new values.

See: Temporal.PlainTime.with

Parameters

#
self:PlainTime
PlainTime
options:WithOptions
WithOptions

Source

Implementation

#
pub fn with(self: PlainTime, options: WithOptions) !PlainTime {
    const partial = abi.c.PartialTime{
        .hour = abi.toOption(abi.c.OptionU8, options.hour),
        .minute = abi.toOption(abi.c.OptionU8, options.minute),
        .second = abi.toOption(abi.c.OptionU8, options.second),
        .millisecond = abi.toOption(abi.c.OptionU16, options.millisecond),
        .microsecond = abi.toOption(abi.c.OptionU16, options.microsecond),
        .nanosecond = abi.toOption(abi.c.OptionU16, options.nanosecond),
    };
    const overflow_opt = abi.c.ArithmeticOverflow_option{
        .is_ok = true,
        .unnamed_0 = .{ .ok = abi.c.ArithmeticOverflow_Constrain },
    };
    return wrapPlainTime(abi.c.temporal_rs_PlainTime_with(self._inner, partial, overflow_opt));
}