Defines a directory relative to a root or relative directory or to the directory specification of a module definition.
Arguments and values
|name||A keyword symbol naming the relative directory|
|directory||The keyword symbol name of a root or relative directory or the name of a module|
|subdirectories|| One or more strings specifying, in order,
subdirectories from |
Root and relative directory definitions are used to isolate file-system details from module definitions. A relative directory is defined in relation to another directory definition, that is either a root directory or another relative directory (which itself is eventually associated with a root directory). If this root directory location changes, every relative directory associated with it is adjusted automatically.
Define a relative directory below
(define-relative-directory :my-tests "The tests directory for My App" :my-app-root "tests")Define another relative directory named
(define-relative-directory :my-performance-tests "The performance-tests subdirectory for My App" :my-tests "performance")Define a data directory sibling to the
(define-relative-directory :my-app-data "The data directory for My App" :my-app :up "data")
Retrieve and then modify the documentation string of the
relative directory named
> (documentation ':my-app-data 'directory) "The data directory for My App" > (setf (documentation ':my-app-data 'directory) "The data directory for my way cool application") "The data directory for my way cool application" > (documentation ':my-app-data 'directory) "The data directory for my way cool application" >
The GBBopen Project