with создаёт новый экземпляр, копируя состояние и переопределяя указанные свойства.
Разбор
- Не мутирует исходный объект.
- Копирование поверхностное для ссылок внутри.
- Удобно в immutable pipeline.
- Глубокое копирование проектируют отдельно.
Итог
with — копия с точечными изменениями.