LINUX.ORG.RU

[CL] Передача &key-параметров >1 раза


0

0

Доброго времени суток всем!

Захотелось странного: хочу keyword-параметры функции, которые при вызове можно указывать более 1 раза. Причем чтобы все переданные значения попадали в список.

Т.е. чтобы можно было такое: (foo :a 1 :b 2 :a 3 :a 4), и при этом внутри функции a => (1 3 4).

Есть какие-то стандартные методики или придется городить свой велосипед?

Заранее спасибо.

★★★★★

пиши макрос.
мне как-то пришлось писать похожую вещь - мне часто
приходится совмещать ключевые параметры и все остальные
т.е использовать такой синтаксис функций:
(defun f-name (&key a b c &rest args)
но язык это не поддерживает. выкрутился макросами

anonymous
()

Городить. "Копипастить" сюда в случае наличия сомнений :)

yyk ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.