FunctionPackage: exclToCDocOverviewCGDocRelNotesIndexPermutedIndex
Allegro CL version 6.2
Unrevised from 6.1

record-source-file

Arguments: fspec &key type

This function is used to record the location of built-in and user defined objects in source files.

The built-in types and the forms that use them are:

Type Used with these forms:
:operator defun, defmacro
:variable defconstant, defparameter, defvar
:special-declaration defconstant, defparameter, defvar
:compiler-macro define-compiler-macro
:setf-method defsetf
:type defclass, defstruct, deftype

For example, putting the following form into a file, compile and loading it: (defun foo (x) ...) will cause foo to be recorded as an :operator in the file in which it was defined.

Redefinition warnings occur when a file is be loaded and it defines an object of an already existing source file recording type. Objects of different types, say an :operator and :type, do not cause redefinition warnings.

Users can extend this facility to understand objects they define. The most usual case is a macro that defines a high-level object, such as:

(defmacro def-frob (name fram)
  `(progn
     (record-source-file ',name :type :frob)
     (def-frob-1 ',name ,fram)))

Then, if the following form is put into /a/b/foo.cl:

(def-frob akbar 'fez)

and is then compiled and loaded, (source-file 'akbar :frob) will return a pathname pointing to /a/b/foo.cl.

See also source-file-recording.htm for general information on source file recording in Allegro CL.


Copyright (c) 1998-2002, Franz Inc. Oakland, CA., USA. All rights reserved.
Documentation for Allegro CL version 6.2. This page was not revised from the 6.1 page.
Created 2002.2.26.

ToCDocOverviewCGDocRelNotesIndexPermutedIndex
Allegro CL version 6.2
Unrevised from 6.1