![]() | ![]() | ![]() | start-patch | ![]() |
|
| (id date&key author description) | [Macro] |
Purpose
Start the definition of a multiple top-level form patch to
a module.
Package :module-manager
Module :module-manager
Arguments and values
| id | An object | |
| date | A simple string representing a date (parsed by
| |
| author | A string (default is "Anonymous" | |
| description | A string or a proper list of strings (default is nil)
| |
| form | A form |
Description
The source file for a patch should be placed in a subdirectory named
patches
The start-patch macro, along with
See also
allow-redefinition
continue-patch
define-module
describe-module
describe-patches
finish-patch
get-patch-description
parse-date
patch
patch-loaded-p
undefmethod
Example
Define a more complex patch (in a file named
my-app-p002.lisppatches
(start-patch (2 "06-23-08"
:author "Corkill"
:description "A more complex patch example")
(printv "More complex example patch started!"))
(eval-when (:compile-toplevel)
(continue-patch
(printv "Defining compile-time-only-macro-for-patch...")
(defmacro compile-time-only-macro-for-patch (x)
`',x)))
(eval-when (:compile-toplevel :load-toplevel :execute)
(continue-patch
(printv "Defining macro-for-patch at compile & load time...")
(defmacro macro-for-patch (x)
`',x)))
(continue-patch
(printv "Using macro-for-patch at load time...")
(macro-for-patch abc))
(eval-when (:compile-toplevel :load-toplevel :execute)
(continue-patch
(printv "Using macro-for-patch at compile & load time...")
(macro-for-patch xyz)))
(eval-when (:compile-toplevel)
(continue-patch
(printv "Using compile-time-only-macro-for-patch...")
(compile-time-only-macro-for-patch abc)))
(finish-patch
(printv "More complex example patch finished!"))
The GBBopen Project
![]() | ![]() | ![]() | start-patch | ![]() |