# UPDATE_HOUR

Chandra Bergmann

#### The function UPDATE_HOUR changes the value of the hour in a Time or DateTime into another specified number.

This function takes two pieces of input: a Time or a DateTime, and a Number. It outputs the given Time or Datetime with the value of the hour replaced by the given number.

### Declaration

UPDATE_HOUR(datetime, new_hour) -> new_datetime
UPDATE_HOUR(time, new_hour) -> new_time

### Parameters

datetime (type: DateTime)
Any DateTime.
time (type: Time)
Any time.
new_hour (required, type: Number)
The new hour; this is the number that will replace whatever value is currently associated with the hour in the given Time or DateTime.

### Return Values

new_datetime (type: DateTime)
The DateTime that results from taking the given DateTime and replacing the hour value with the given number.
new_time (type: Time)
The Time that results from taking the given Time and replacing the hour value with the given number.

### Examples

Assume the first example has access to the following DateTime value:

example_date_and_time = { "date": {  "day": 1,  "month": 4,  "year": 2021 }, "time": {  "hour": 16,  "minute": 14,  "second": 38,  "millisecond": 0 }, "timeZone": "UTC"}

The following example takes the time described in example_date_and_time and replaces the given hour value (16) with 5. Note that the only difference between the output of this example and example_date_and_time is the the value of the hour. When given a DateTime as input, UPDATE_HOUR returns a DateTime:

UPDATE_HOUR(example_date_and_time, 5) = { "date": {  "day": 1,  "month": 4,  "year": 2021 }, "time": {  "hour": 5,  "minute": 14,  "second": 38,  "millisecond": 0 }, "timeZone": "UTC"}

The above example demonstrates how the UPDATE_HOUR function behaves when given a DateTime as input. In order to further establish how the UPDATE_HOUR function behaves when given a Time as input, assume the last example has access to the following Time value:

example_time = { "hour": 16, "minute": 14, "second": 38, "millisecond": 0}

The following example takes the time described in example_time and replaces the given hour value (16) with 5. Note that the only difference between the output of this example and example_time is the the value of the hour. When given a Time as input, UPDATE_HOUR outputs a Time:

UPDATE_HOUR(example_time, 2) = { "hour": 5, "minute": 14, "second": 38, "millisecond": 0}