aux ... +Aux

+Aux - префиксный класс, поддерживающий вспомогательные ключи для +relation, в дополнение к индексам +Ref или +Idx. Ожидает список вспомогательных атрибутов того же объекта и объединяет все ключи в этом порядке в один ключ индекса.
(rel nr (+Ref +Number)) # Normal, non-unique index
(rel nm (+Aux +Ref +String) (nr txt)) # Combined name/number/text index
(rel
aux - возвращает объект базы данных класса cls
, где значение для sym
соответствует any
и следующим аргументам. sym
, cls
и hook
должны указывать дерево для cls
или один из его суперклассов для отношения со вспомогательными ключами. Для доступа с несколькими ключами aux похож на db, но быстрее, поскольку он может использовать доступ к одному дереву.
(aux 'sym 'cls ['hook] 'any ..) -> sym
(class +PS +Entity)
(rel par (+Dep +Joint) (sup) ps (+Part)) # Part
(rel sup (+Aux +Ref +Link) (par) NIL (+Supp)) # Supplier
...
(aux 'sup '+PS # Access PS object
(db 'nr '+Supp 1234)
(db 'nr '+Part 5678) )
https://picolisp.tiddlyhost.com/#aux
P.S. Смотрите Pilog solve and the +Aux relation
Subscribe to my newsletter
Read articles from Sergey Shishkin directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Sergey Shishkin
Sergey Shishkin
Всегда чему-то учусь!