Spec-Zone.ru › Elisp

Списки свойств вне символов

eq.

Функция: plist-get plist property &optional predicate

Эта функция возвращает значение свойства property, хранящееся в списке свойств plist. Для сравнения используется predicate, по умолчанию равный eq. В качестве аргумента plist допускается некорректный список. Если свойство property не найдено в списке plist, функция возвращает nil. Например:

(plist-get '(foo 4) 'foo)
     ⇒ 4
(plist-get '(foo 4 bad) 'foo)
     ⇒ 4
(plist-get '(foo 4 bad) 'bad)
     ⇒ nil
(plist-get '(foo 4 bad) 'bar)
     ⇒ nil
Функция: plist-put plist property value &optional predicate

Эта функция сохраняет value как значение свойства property в списке свойств plist. Для сравнения используется predicate, по умолчанию равный eq. Функция может изменить plist на месте или создать новую структуру списка, не изменяя старую. Функция возвращает изменённый список свойств, поэтому вы можете сохранить его обратно туда, откуда получили plist. Например:

(setq my-plist (list 'bar t 'foo 4))
     ⇒ (bar t foo 4)
(setq my-plist (plist-put my-plist 'foo 69))
     ⇒ (bar t foo 69)
(setq my-plist (plist-put my-plist 'quux '(a)))
     ⇒ (bar t foo 69 quux (a))
Функция: lax-plist-get plist property

Эта устаревшая функция аналогична plist-get, но сравнивает свойства с помощью equal вместо eq.

Функция: lax-plist-put plist property value

Эта устаревшая функция аналогична plist-put, но сравнивает свойства с помощью equal вместо eq.

Функция: plist-member plist property &optional predicate

Эта функция возвращает значение, отличное от nil, если список plist содержит указанное свойство property. Для сравнения используется predicate, по умолчанию равный eq. В отличие от plist-get, эта функция позволяет отличить отсутствующее свойство от свойства со значением nil. Фактически возвращаемое значение — это хвост списка plist, car которого является property.

Copyright © 1990-1996, 1998-2026 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Plist-Access.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API