Previous: Rationale, Up: Package Locks [Contents][Index]
A package’s locks can be enabled or disabled by using the
ext:package-lock
and ext:package-definition-lock
accessors, as follows:
(setf (ext:package-lock (find-package "UNIX")) nil) (setf (ext:package-definition-lock (find-package "UNIX")) nil)
This function is an accessor for a package’s structural lock, which protects it against modifications to its list of exported symbols.
This function is an accessor for a package’s definition-lock, which
protects symbols in that package from redefinition. As well as
protecting the symbol’s fdefinition from change, attempts to change
the symbol’s definition using defstruct
, defclass
or
deftype
will be trapped.
This macro can be used to execute forms with all package locks (both structure and definition locks) disabled.
This function disables both structure and definition locks on all currently defined packages. Note that package locks are reset when CMUCL is restarted, so the effect of this function is limited to the current session.
Previous: Rationale, Up: Package Locks [Contents][Index]