Previous: Plists and Alists, Up: Property Lists [Contents][Index]
以下の関数はプロパティーリストを操作するために使用されます。これらの関数はすべて、プロパティー名の比較にeq
を使用します。
この関数は、プロパティーリストplistに保管された、プロパティーpropertyの値をreturnします。この関数には、変形された(malformed)plist引数を指定できます。plistでpropertyが見つからなかった場合、この関数はnil
をreturnします。たとえば、
(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に、プロパティーpropertyの値として、valueを保管します。この関数はplistを破壊的に変更するかもしれず、元のリスト構造を変更せずに新しいリストを構築することもあります。この関数は変更されたプロパティーリストをreturnするので、plistを取得した場所に書き戻すことができます。たとえば、
(setq my-plist '(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))
plist-get
と同様ですが、プロパティーの比較にeq
ではなくequal
を使用します。
plist-put
と同様ですが、プロパティーの比較にeq
ではなくequal
を使用します。
この関数は与えられたpropertyがplistに含まれる場合は、非nil
をreturnします。plist-get
とは異なり、この関数は存在しないプロパティーと、値がnil
のプロパティーを区別できます。実際にreturnされる値は、car
がpropertyで始まる、plistの後尾部分です。