В этом разделе описываются функции для доступа и хранения ассоциаций в хеш-таблице. В общем случае, любым объектом Lisp можно использовать в качестве хеш-ключа, если только метод сравнения не накладывает ограничений. Любой объект Lisp также может использоваться в качестве значения.
Эта функция ищет key в table и возвращает его связанное value — или default, если key не имеет ассоциации в table.
Эта функция вставляет ассоциацию для key в table со значением value. Если key уже имеет ассоциацию в table, value заменяет старое связанное значение. Эта функция всегда возвращает value.
Эта функция удаляет ассоциацию для key из table,
если она существует. Если key не имеет ассоциации, remhash
ничего не делает.
Примечание Common Lisp: В Common Lisp remhash возвращает
не-nil, если он фактически удалил ассоциацию, и nil
в противном случае. В Emacs Lisp remhash всегда возвращает nil.
Эта функция удаляет все ассоциации из хеш-таблицы table,
чтобы она стала пустой. Это также называется очисткой хеш-таблицы.
clrhash возвращает пустую table.
Эта функция вызывает function один раз для каждой
ассоциации в table. Функция function должна принимать два
аргумента — key, перечисленный в table, и его связанное
value. maphash возвращает nil.
function может вызывать puthash для установки нового значения
для key и remhash для удаления key, но не должна
добавлять, удалять или изменять другие ассоциации в table.