^hash::create[]
^hash::create[существующий хеш или хешфайлили пользовательский объект или файл]
Если параметр не задан, будет создан пустой хеш.
Если указан существующий хеш или другой совместимый с хешом объект, конструктор создает его копию.
Пустой хеш, создаваемый конструктором без параметров, нужен в ситуации, когда необходимо динамически наполнить хеш данными, например:
$dyn[^hash::create[]]
^for[i](1;10){
$dyn.$i[$value]
}
Перед выполнением for мы определили, что именно наполняем.
Если предполагается интенсивная работа по изменению содержимого хеша, но необходимо сохранить, скажем, значения по умолчанию, например:
$pets[
$.pet[Собака]
$.food[Косточка]
$.good[Ошейник]
]
$pets_copy[^hash::create[$pets]]
Замечание: поле _default копируется. [3.1.4]
Внимание ^hash::create[существующий хеш или хешфайл] "конструктор создает его копию" со ссылками на существующий хеш. Это нет вполне независимая копя хеша.