Go to the first, previous, next, last section, table of contents.

Feature

feature の概念は、 "(必要な)定義がすでに定義されているか否か" を判断する仕事を 単純化します。異なるファイルから(feature と呼ばれる)定義の集合を必要とするプロ グラムは、それを require (訳注:要求)することで、(それらが)定義されてあること を確認することができます。 feature を持つファイルがまだロードされてない場合、 そのファイルをロードします(ロードできない場合、エラーを出します)。ファイルがす でにロードされてある場合、2 度ロードすることはありません。

プログラムは、feature の名前を持って require を呼ぶことで、特定の feature (の 存在)を要求することができます。 require は(グローバルな) features リストを見 て、"その feature が provide (訳注:提供) されているか否か" を調べます。提供さ れてない場合、その feature に対するファイルをロードします。このファイルは、(こ の feature を features に追加する) provide の呼び出しを持ってなくてはいけませ ん。

(普通) feature には、その feature を提供するファイルの名前が付けられます。

Function: provide feature

この関数は、(カレントな) Emacs セッションにおける feature として feature をアナウンスします。これは、 feature に関係する(いくつかの)関数をロードす ることを意味します。

これは features リストに feature が(まだ)存在しない場合それを cons するこ とで、行なわれます。 feature はシンボルでなくてはいけません。 feature を返 します。

  (provide 'foo)
  => foo
  features
  => (foo)

Function: require feature &optional filename

この関数は、 (Emacs に) "feature が存在するか(i.e., (featurep feature) が 真か) 否か" を調べます。存在しない場合、require は filename をロードしま す。 filename が与えられない場合、ロードするファイルの名前として feature を用います。ロードするファイルが存在しない場合や、(ファイルをロードした後) feature が provide されなかった場合、エラーになります。

Function: featurep feature

この関数は、 (Emacs に) feature が存在する(i.e., feature が features のメ ンバーである)場合、 t を返します。

Variable: features

このグローバル変数の値は、(Emacs 中に)存在する feature のシンボルのリスト です。


Go to the first, previous, next, last section, table of contents.