この関数はsymbolを定義しているファイルの名前をリターンする。typeがnil
なら、どのようなタイプの定義も受け入れる。typeがdefun
なら関数定義、defvar
は変数定義、defface
はフェイス定義だけを指定する。
値は通常は絶対ファイル名である。定義がどのファイルにも関係しなければnil
になることもある。symbolがオートロード関数を指定するなら、値が拡張子なしの相対ファイル名になることもある。
symbol-file
は変数load-history
の値にもとづく。
この変数の値はロードされたライブラリーファイルの名前を、それらが定義する関数と変数の名前、およびそれらがプロバイドまたはリクワイアするフィーチャに関連付けるalistである。
このalist内の各要素は、1つのロード済みライブラリー(スタートアップ時にプリロードされたライブラリーを含む)を記述する。要素はCARがライブラリーの絶対ファイル名(文字列)であるようなリストである。残りのリスト要素は以下の形式をもつ:
var
シンボルvarが変数として定義された。
(defun . fun)
関数funが定義された。
(t . fun)
関数funは、このライブラリーが関数として再定義される前はautoloadだった。後続する要素は常に(defun
. fun)
であり、これはfunを関数として定義することを表す。
(autoload . fun)
関数funはautoloadとして定義された。
(defface . face)
フェイスfaceが定義された。
(require . feature)
フィーチャfeatureがリクワイアされた。
(provide . feature)
フィーチャfeatureがプロバイドされた。
(cl-defmethod method specializers)
cl-defmethod
を使用してスペシャライザーspecializersとともにmethodという名前が定義された。
(define-type . type)
型typeが定義された。
load-history
の値には、CARがnil
であるような要素が1つ含まれるかもしれない。この要素はファイルをvisitしていないバッファーでeval-buffer
により作成された定義を記述する。
コマンドeval-region
はload-history
を更新しますが、要素を置き換えずに、visitされているファイルの要素にたいして定義されたシンボルを追加します。evalについてを参照してください。