Копирование и обновление выражений записей
Выражение копии и обновления записи — это выражение , копирующее существующую запись, обновляет указанные поля и возвращает обновленную запись.
Синтаксис
{ record-name with
updated-labels }
{| anonymous-record-name with
updated-labels |}
Замечания
Записи и анонимные записи по умолчанию неизменяемы, поэтому невозможно обновить существующую запись. Чтобы создать обновленную запись, все поля записи необходимо будет указать еще раз. Чтобы упростить эту задачу, можно использовать выражение копирования и обновления. Это выражение принимает существующую запись, создает новый из того же типа, используя указанные поля из выражения и отсутствующие поля, указанные выражением.
Это может быть полезно при копировании существующей записи и, возможно, изменении некоторых значений поля.
Например, только что созданная запись.
let myRecord2 =
{ MyRecord.X = 1
MyRecord.Y = 2
MyRecord.Z = 3 }
Чтобы обновить только два поля в этой записи, можно использовать выражение копирования и обновления записи:
let myRecord3 = { myRecord2 with Y = 100; Z = 2 }