dictnext

Wyszukaj w słowniku

Dostępne słowniki:

Termin Definicja
dictnext

(dictnext ename [rewind])

Wyszukuje elementu w słowniku.

Funcja dictnext przeszukuje słownik (ename) w poszukiwaniu kolejnego elementu. Jeśli parametr rewind jest ustawiony i nie nil, słownik jest przeszukiwany "od czątku" - pierwszy element słownika jest zwracany.

Przykład:

; tworzymy słownik:
(setq  dict  (list  '(0 . "DICTIONARY")'(100 . "AcDbDictionary")))

(setq  new_name  (entmakes  dict))
(setq  nmdict  (namedobjdict ))
(setq  newdict  (dictadd nmdict "NEW_DICTIONARY" new_name ))

; przygotowujemy dane do zapisania w słowniku
(setq datalist  (append  (list  '(0 . "XRECORD") '(100 . "AcDbXrecord"))  '((1 . "new_data")  (10 1. 2. 3.)  (70 . 33))))

; dodajemy dane do słownika - pierwszy wpis:
(setq new_name  (entmakex datalist))
(dictadd newdict "FIRST__DATA_RECORD" new_name)

; dodajemy dane do słownika - drugi wpis:
(setq new_name  (entmakex datalist))
(dictadd newdict "SECOND_DATA_RECORD" new_name)


Zwraca drugi element ze słownika
(cdr  (car  (dictnext newdict)))

przeszukujemy słownik od początku, zwraca pierwszy element słownika
(cdr  (car  (dictnext newdict  T)))

 

comments powered by Disqus